使用处理值计划
偏方秘方 2021年09月06日 浏览:4 次
大部分集合函数在进行计算时都去除NULL值,但COUNT函数是一个例外。一般情况下当对一个包含NULL值的列使用COUNT函数时,这个列中的NULL值将会被去除掉。但是如果COUNT函数使用一个星号,它就会计算所有的行,而不管其中是否包含NULL值。
以及新浪、腾讯微博及各大论坛 如果你想使用COUNT函数计算包含NULL值的列的所有行,那么需要使用ISNULL函数。ISNULL函数能将一个NULL值以一个合法的值代替。
事实上,在有NULL值的情况下使用集合函数时,ISNULL函数是非常有用的。但记住当你使用星号时,COUNT函数将计算所有行。下面是一段示例代码,说明了NULL值对AVG和COUNT函数的影响:
SET NOCOUNT ON
GO
CREATE TABLE xCount
(pkey1 INT IDENTITY NOT NULL
CONSTRAINT pk_xCount PRIMARY KEY,
Col1 int NULL)
GO
INSERT xCount (Col1) VALUES (10)
GO
INSERT xCount (Col1) VALUES (15)
GO
INSERT xCount (Col1) VALUES (20)
GO
INSERT xCount (Col1) VALUES (NULL)
GO
SELECTAVG(Col1) AvgWithoutIsNullFunctionOnCol1,
AVG(ISNULL(Col1,0)) AvgWithIsNullFunctionOnCol1,
COUNT(Col1) NoIsNullFunctionOnCol1 ,
COUNT(ISNULL(Col1,0)) UsingIsNullFunctionOnCol1,
Count(*) UsingAsterisk
FROM xCount
GO
DROP TABLE xCount
GO
-- OUTPUT:
-- AvgWOIsNullFnctnCol1 AvgWIsNullFnctnCol1 WOIsNullFnctnCol1 WIsNullFnctnCol1 UsingAsterisk
-- -------------------- ------------------- ----------------- ---------------------------
--15113 44
:李宁
欢迎评论或投稿
成都哪家医院治疗白癜风好朗圣药业紧急避孕药的效果
百色哪家治疗白癜风医院好

-
管理2015NBA最佳防守阵容保罗莱昂纳德领
2020-09-18
-
贷款买房慎选银行合理计划优选贷款方式
2020-06-25
-
幸福快乐2018北京市昌平区首届校园旱地冰球比赛依依不舍
2020-06-17
-
针灸减肥还值得一试1
2019-07-15
-
丹道小周天有练习的人进来
2019-07-13
-
牡丹皮栽培管理有技术
2019-07-11