SQL 服务器 ISNULL 不工作
SQL Server ISNULL not working
我对 SQL 服务器有以下查询:
SELECT SUM(ISNULL(CurrentVendorLastPurchCost, 0)) AS TheSum FROM VW_Report_AvailableInventory WITH(NOLOCK)
我运行它所在的table是空的。鉴于 ISNULL 条款,我希望它 return 0.
但是,它 return 为 NULL。
我查看了一些帖子并尝试了各种不同的代码组合,但其中 none 产生了我想要的结果。
我做错了什么??
因为你的 table 是空的,所以你没有任何值可以应用 ISNULL
函数,SUM
在空集上的结果是 NULL
。
您不应该关心求和中的 null
值。要解决您的问题,请使用:
SELECT ISNULL(SUM(CurrentVendorLastPurchCost), 0) AS TheSum
FROM VW_Report_AvailableInventory WITH(NOLOCK)
您不需要 SUM
中的 ISNULL
。而是将它环绕在总和上。尝试。
SELECT ISNULL(SUM(CurrentVendorLastPurchCost), 0) AS TheSum FROM VW_Report_AvailableInventory WITH(NOLOCK)
我对 SQL 服务器有以下查询:
SELECT SUM(ISNULL(CurrentVendorLastPurchCost, 0)) AS TheSum FROM VW_Report_AvailableInventory WITH(NOLOCK)
我运行它所在的table是空的。鉴于 ISNULL 条款,我希望它 return 0.
但是,它 return 为 NULL。
我查看了一些帖子并尝试了各种不同的代码组合,但其中 none 产生了我想要的结果。
我做错了什么??
因为你的 table 是空的,所以你没有任何值可以应用 ISNULL
函数,SUM
在空集上的结果是 NULL
。
您不应该关心求和中的 null
值。要解决您的问题,请使用:
SELECT ISNULL(SUM(CurrentVendorLastPurchCost), 0) AS TheSum
FROM VW_Report_AvailableInventory WITH(NOLOCK)
您不需要 SUM
中的 ISNULL
。而是将它环绕在总和上。尝试。
SELECT ISNULL(SUM(CurrentVendorLastPurchCost), 0) AS TheSum FROM VW_Report_AvailableInventory WITH(NOLOCK)