您好
我有一位总是写ISNULL(COUNT(*),0)
的同事,但我一直认为COUNT(*)
永远不会返回NULL
。
然后我搜索了互联网,我的发现让我写了这段代码:
create table t1 (
val1 varchar(50),
)
select count(*) from t1
where val1 like 'abc'
group by val1
当COUNT(*)返回NULL
时是否还有其他情况?
答案 0 :(得分:11)
它不会返回NULL
。示例中的GROUP BY
使其根本不返回任何行,这与列中的NULL
不同。
答案 1 :(得分:2)
该示例不返回NULL。由于空集上的GROUP BY,它根本不返回任何行。
COUNT(*)不能返回NULL。所以ISNULL是不必要的。
答案 2 :(得分:0)
ISNULL不需要它会返回一个数字