简体   繁体   English

在CASE表达式中应用ISNULL

[英]Applying ISNULL inside of a CASE expression

I need to have a way to apply ISNULL in a CASE expression that will replace the NULL values with 0. The below code runs but still returns NULL values. 我需要一种在CASE表达式中应用ISNULL ,该表达式将NULL值替换为0。下面的代码运行,但仍返回NULL值。 Is there any way to accomplish this? 有什么办法可以做到这一点? There are two stock types - 'A' and blank, I am trying to get the sum of the quantity for each type. 库存类型有两种-“ A”和空白,我试图获取每种类型的数量总和。

I've tried using ISNULL inside the CASE 我已经尝试使用ISNULL里面CASE

CASE WHEN MRP.stock_type = 'A' 
    THEN ISNULL(SUM(MRP.QUANTITY),0)   
END AS 'Uncovered_Quantity', 
CASE WHEN MRP.stock_type = ' '
    THEN  ISNULL(SUM(MRP.QUANTITY),0)
END AS 'Blank_Quantity',

I think you probably intended conditional aggregation: 我认为您可能打算进行条件聚合:

SUM(CASE WHEN MRP.stock_type = 'A' THEN MRP.QUANTITY ELSE 0 END) as Uncovered_Quantity, 
SUM(CASE WHEN MRP.stock_type = ' ' THEN MRP.QUANTITY ELSE 0 END) as Blank_Quantity,

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM