如何根据条件分配值?
我有这个CTE,我想根据productionOderStatus列值在计划中的列中带回一定的结果。如果ProductionOderStatus是3或4,那么我只想显示“计划中的列的原始值”,但是如果其他任何内容,那么计划中应该是0。
我该如何实现?我尝试使用案例,但似乎没有起作用。
POH (ITEMNUMBER, SCHEDULEDQUANTITY,CASE1)
AS
(
SELECT ITEMNUMBER, SUM(SCHEDULEDQUANTITY),
CASE
WHEN PRODUCTIONORDERSTATUS != 3 THEN SCHEDULEDQUANTITY = 0
OR PRODUCTIONORDERSTATUS != 4 THEN SCHEDULEDQUANTITY = 0
ELSE SCHEDULEDQUANTITY
END AS CASE1
FROM POH
GROUP BY ITEMNUMBER
)
I have this CTE which I want to bring back a certain result in the SCHEDULEDQUANTITY column based on what the PRODUCTIONORDERSTATUS column value is. If the PRODUCTIONORDERSTATUS is 3 or 4 then I just want the original value of the SCHEDULEDQUANTITY column displayed but if it is anything else then the SCHEDULEDQUANTITY should be 0.
How do I achieve this? I tried using case but it doesn't seem to be working.
POH (ITEMNUMBER, SCHEDULEDQUANTITY,CASE1)
AS
(
SELECT ITEMNUMBER, SUM(SCHEDULEDQUANTITY),
CASE
WHEN PRODUCTIONORDERSTATUS != 3 THEN SCHEDULEDQUANTITY = 0
OR PRODUCTIONORDERSTATUS != 4 THEN SCHEDULEDQUANTITY = 0
ELSE SCHEDULEDQUANTITY
END AS CASE1
FROM POH
GROUP BY ITEMNUMBER
)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论