获取SQL Server 2008中的所有非空列计数
表列为获取SQL Server 2008中的所有非空列计数,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,表列为a(int)、b(int)、c(int)。而且这个表中的行太多了。例如,我在该表中有10行。我想得到不为null的列计数 举例来说 所以我的结果是6。那么如何在T-SQL中获得空列计数呢?下面的查询将为您提供任何非空值的计数: SELECT COUNT(a)+COUNT(b)+COUNT(c) FROM yourtable 如果需要跨列的所有值的计数: select count(a) + count(b) + count(c) as NonNullCount, 3*
a(int)、b(int)、c(int)
。而且这个表中的行太多了。例如,我在该表中有10行。我想得到不为null的列计数
举例来说
所以我的结果是6。那么如何在T-SQL中获得空列计数呢?下面的查询将为您提供任何非空值的计数:
SELECT COUNT(a)+COUNT(b)+COUNT(c)
FROM yourtable
如果需要跨列的所有值的计数:
select count(a) + count(b) + count(c) as NonNullCount,
3*count(*) - (count(a) + count(b) + count(c)) as NullCount
from table t;
这将为您提供问题中指定的“6”和“3”。请编辑问题以包含您想要的结果。