Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Vedere doppioni ma non raggruppati

    Salve a tutti,
    mi sono letto praticamente tutto il forum in materia ma senza aver trovato risposta alla mia domanda banale.

    Devo fare una select di doppioni ma non voglio vederli raggruppati, ma distinti e separati:

    quindi il risultato dovrebbe essere tipo

    - 12 | PAOLO
    - 18 | PAOLO
    - 34 | FRANCESCO
    - 4 | FRANCESCO

    e via discorrendo.

    Tutti gli esempi trovati in giro funzionano solo raggruppando i dati, ma tenendoli distinti si puo?

    Grazie
    Perchè uso Maxthon? | Mi piace questa chat

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    CREATE TEMPORARY TABLE tmp
    SELECT COUNT(nome) AS quanti, nome 
    FROM tabella GROUP BY nome HAVING quanti > 1
    codice:
    SELECT *
    FROM tmp, tabella
    WHERE tmp.nome = tabella.nome
    ORDER BY tmp.nome

  3. #3
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Al posto della seconda meglio questa

    SELECT *
    FROM tabella
    INNER JOIN tmp on
    tmp.nome = tabella.nome
    ORDER BY tmp.nome

  4. #4
    Quindi con una unica query non si può fare.

    Immaginavo che erano necessarie 2 tabelle
    Perchè uso Maxthon? | Mi piace questa chat

  5. #5
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Originariamente inviato da Bukowski
    Quindi con una unica query non si può fare.

    Immaginavo che erano necessarie 2 tabelle
    se hai mysql almeno 4.1 si può fare con una query.

  6. #6
    Originariamente inviato da nicola75ss
    se hai mysql almeno 4.1 si può fare con una query.
    eh lo so, con le subquery ... ma ho il 4.0

    va beh fa niente, faccio questo un po piu lungo

    grazie mille
    Perchè uso Maxthon? | Mi piace questa chat

  7. #7
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    select * from 
    (
    SELECT *,count(nome) as quanti from tabella GROUP BY nome HAVING quanti > 1
    ) as tabella2
    inner join tabella on tabella.nome = tabella2.nome
    order by tabella.nome

  8. #8
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Originariamente inviato da Bukowski
    eh lo so, con le subquery ... ma ho il 4.0

    va beh fa niente, faccio questo un po piu lungo

    grazie mille
    stavo scrivendo l'altra query quando hai risposto.
    allora usa quella. non muore nessuno per una tabella temporanea.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.