SQL group by 查询统计问题,求解

吾同树 发布于 2014/10/16 16:20
阅读 708
收藏 1

例如我有一张表X(a,b,c),我想以c分组统计得到每组记录条数和每组中a大于2的记录条数,我的意思就是

select count(*),count(X.a>2) from X group by c——当然这个有问题,难道非要再写一个子句来得到每组中a大于2的记录条数?求简洁语句。tks~

加载中
0
JohnnyZz
JohnnyZz
select count(1),count(case when a>2 then 1 else null end) from X group by c
吾同树
吾同树
嗯,是的,谢啦~
0
JohnnyZz
JohnnyZz
select count(1),count(if(a>2,1,null)) from X group by c
JohnnyZz
JohnnyZz
@吾同树 可以用case
JohnnyZz
JohnnyZz
@吾同树 我这是mysql的写法,sqlserver中应该有这样的判断函数吧
吾同树
吾同树
你这不行吧,报错,貌似语句中不能这样使用if函数吧
返回顶部
顶部