小编Ben*_*njo的帖子

使用case语句计算非空列的数量

我的查询需要一些帮助...我想在每个房子里计算一些名字,所有col#都是名字.

查询:

SELECT House#,
    COUNT(CASE WHEN col#1 IS NOT NULL THEN 1 ELSE 0 END) + 
    COUNT(CASE WHEN col#2 IS NOT NULL THEN 1 ELSE 0 END) +
    COUNT(CASE WHEN col#3 IS NOT NULL THEN 1 ELSE 0 END) as count
  FROM myDB
 WHERE House# in (house#1,house#2,house#3)
 GROUP BY House#
Run Code Online (Sandbox Code Playgroud)

期望的结果:

房子1 - 计数是3 /房子2 - 计数是2 /房子3 - 计数是1

...使用我当前的查询,计数结果将只有3

sql sql-server

3
推荐指数
1
解决办法
127
查看次数

标签 统计

sql ×1

sql-server ×1