我应该得到 3 个返回值与 1,但在我的 sum case 语句(最后一个,当似乎不与 OR 的工作产生 3,它返回 7 随机值。
关于此的任何帮助
SUM(CASE WHEN ReworkCode.CodeNum != 4
OR ReworkCode.CodeNum != 5
OR ReworkCode.CodeNum != 6
OR ReworkCode.CodeNum != 7 THEN 1 ELSE 0 END) AS NumberRejectedByOther
我的其他情况的工作罚款似乎。
!=
并使用Or
s...。不过,维护和思考一定很丑陋。尝试找出如何避免or
或!=
我想你想要也不是...
SUM(CASE WHEN ReworkCode.CodeNum != 4
AND ReworkCode.CodeNum != 5
AND ReworkCode.CodeNum != 6
AND ReworkCode.CodeNum != 7 THEN 1 ELSE 0 END) AS NumberRejectedByOther
或使用:(假设你的目标是有什么不是 4,5,6,7 或 null 是 1。)
SUM(CASE WHEN ReworkCode.CodeNum not in (4,5,6,7) THEN 1 ELSE 0 END) AS NumberRejectedByOther
但我不是 100 % 确定你在做什么,所以这两个都不会产生预期的结果。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(11条)