mssql count问题
假定我有一张表test,表中有字段如下: id name 1 1 1 0 1 1 2 1 2 0 3 1 3 0 3 0 我想得到的结果是:name0为name中为0的个数,name1为name中为1的个数 id name0 name1 1 1 2 2 1 1 3 2 1 请问这条sql语句怎么写?mssqlserver
假定我有一张表test,表中有字段如下: id name 1 1 1 0 1 1 2 1 2 0 3 1 3 0 3 0 我想得到的结果是:name0为name中为0的个数,name1为name中为1的个数 id name0 name1 1 1 2 2 1 1 3 2 1 请问这条sql语句怎么写?mssqlserver
答案:select id,sum(case when name=0 then 1 else 0 end) name0,sum(case when name=1 then 1 else 0 end) name1 from test group by id