2016-06-10 3 views
0

У меня есть таблица, подобная этой.Как подсчитать строки с помощью группы по

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

Я хочу считать найденные строки с помощью группы по, так что это будет возвращать значение, как это.

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

Что такое правильный запрос, чтобы показать результаты, как это? Я уже пытался использовать SQL_CALC_FOUND_ROWS, но он возвращает значения = A1, A2, A3. Спасибо.

ответ

3

Похоже, вы просто хотите, количество различных блоков:

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

thank u it works :) –

0

Не очень хороший подход, но если это должно быть сделано с помощью group by то, вы можете попробовать это.

select count(cnt) from (select count(1) as cnt from table_inner group by block) table_outer; 
Смежные вопросы