如何使用group by计算行数

时间:2016-06-10 10:19:42

标签: sql

我有一张这样的桌子。



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




我想使用group by来计算找到的行,所以它会像这样返回值。



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




显示结果的正确查询是什么?我已经尝试过使用SQL_CALC_FOUND_ROWS,但它返回值= A1,A2,A3。谢谢。

2 个答案:

答案 0 :(得分:3)

看起来你只想要不同块的数量:

select count(distinct block) as total_block from tablename

答案 1 :(得分:0)

不是非常好的方法,但如果必须通过group by完成,那么你可以试试这个。

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