SQL Server ISNULL无法正常工作

时间:2015-01-28 13:44:56

标签: sql-server isnull

我对SQL server有以下查询:

SELECT SUM(ISNULL(CurrentVendorLastPurchCost, 0)) AS TheSum FROM VW_Report_AvailableInventory WITH(NOLOCK)

我正在运行它的表是空的。给定ISNULL子句,我希望它返回0。

但是,它返回NULL。

我看了很多帖子并尝试了各种不同的代码组合,但没有一个产生我想要的结果。

我做错了什么?

2 个答案:

答案 0 :(得分:2)

由于您的表格为空,因此您没有任何值可以应用ISNULL函数,SUM对空集的结果为NULL。 在求和时你不应该关心null值。要解决您的问题,请使用:

SELECT ISNULL(SUM(CurrentVendorLastPurchCost), 0) AS TheSum
FROM VW_Report_AvailableInventory WITH(NOLOCK)

答案 1 :(得分:2)

您不需要ISNULLSUM。把它换成总和。尝试。

SELECT ISNULL(SUM(CurrentVendorLastPurchCost), 0) AS TheSum FROM VW_Report_AvailableInventory WITH(NOLOCK)