2016-06-10 12 views
0

Ich habe eine Tabelle wie folgt.So zählen Sie Zeilen mit Gruppe von

--------- 
 
| block | 
 
--------- 
 
| A1 | 
 
| A1 | 
 
| A2 | 
 
| A3 | 
 
---------

Ich möchte mithilfe von Gruppen gefundenen Zeilen zählen, so wäre es Wert wie folgt zurück.

-------------- 
 
| total_block| 
 
-------------- 
 
| 3   | 
 
--------------

Was ist die korrekte Abfrage wie die Ergebnisse zu zeigen? Ich habe bereits versucht, SQL_CALC_FOUND_ROWS zu verwenden, aber es gibt Werte zurück = A1, A2, A3. Vielen Dank.

Antwort

3

Sieht aus wie Sie nur die Anzahl der verschiedenen Blöcke wollen:

select count(distinct block) as total_block from tablename 
+0

danke, es funktioniert :) –

0

Nicht das sehr schön Ansatz, aber wenn es dann über group by getan werden muss, können Sie dies versuchen.

select count(cnt) from (select count(1) as cnt from table_inner group by block) table_outer; 
Verwandte Themen