表 t1 如下:
AA BB
------------ ---------------
001 1
001 0
001 1
001 1
002 0
002 1
002 0
目的是想统计出如下的结果:(含义想统计出相同AA列中1的个数和0的个数,不知表达清楚没有)
AA BB1 BB0
----------------- -------------- -----------------
001 3 1
002 1 2
可以得出结论的写法:
> select AA,sum(case when BB=1 then 1 else 0 end) BB1,sum(case when BB=0 then 1 else 0 end) BB0 from T1 group by AA;
我的写法:
>select a.AA,count(a.BB) BB1,count(b.BB) BB0 from t1 a,t1 b
where a.BB=1 and b.BB=0
group by a.AA;
我的写法得不到正确结论,不知道是什么原因,还请大侠们指点一下
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7316690/viewspace-201725/
,如需转载,请注明出处,否则将追究法律责任。