2009-03-18 15 views
16

Esiste un modo semplice per recuperare un elenco di tutti i valori univoci in una colonna, insieme al numero di volte in cui tale valore è apparso?MySQL: recupera valori e conteggi univoci per ogni

Esempio set di dati:

A 
A 
A 
B 
B 
C 

... sarebbe tornato:

A | 3 
B | 2 
C | 1 

Grazie!

risposta

41

Uso GROUP BY:

select value, count(*) from table group by value 

Usa dover ridurre ulteriormente i risultati, per esempio solo i valori che si verificano più di 3 volte:

select value, count(*) from table group by value having count(*) > 3 
+0

selezionare il valore, COUNT (*) dal gruppo di tabella per valore avendo COUNT (*)> 3 è conteggio (*) solo calcolato una volta qui? – user1443778

+0

grazie mille, davvero utile @cdonner –

+0

Ahh! Grazie mille per questo. –

5
SELECT id,COUNT(*) FROM file GROUP BY id 
+0

grazie grazie :) – Ian