根据某一列的值——每一种值下的数据条数
例如,下面sql在统计:当 choose=1 时的数据条数 num_a,当 choose=2 时的数据条数 num_b
SELECT COUNT(case when choose = 1 then 0 end) as num_a,
COUNT(case when choose = 2 then 0 end) as num_b
FROM user_choose
WHERE ( datastatus = '1' )
AND ( classification_id = '5' ) ;
查询结果如下:
先按某一列分组——再统计某一列值不同情况下的数据条数
统计:每种classification_id 的choose=1 时的条数 num_c 与 choose=2 时的数据条数 num_d
SELECT classification_id,COUNT(choose = 1 OR NULL) AS num_c,
COUNT(choose = 2 OR NULL) AS num_d
FROM user_choose
WHERE ( datastatus = '1' )
GROUP BY classification_id ;
查询结果如下:
以上sql语句非常有利于各种统计数据的生成,以此记录。