我的收入脚本将发票数量乘以手动价格,如果手工价格为空,它将乘以列表价格,如果两者都为空,则该值为0。
但我的问题是手动价格上有0个值因此,因为它是优先级字段,所以我得到0收入不应该是因为列表价格不是0。
我尽可能地将CASE声明作为我的最后手段,但如果真的没有更简单的方法,那么我将使用它。
Male
答案 0 :(得分:4)
然后不要使用ISNULL()
。使用适当的逻辑:
SELECT (INVOICE_QUANTITY *
(CASE WHEN MANUAL_PRICE <> 0 THEN MANUAL_PRICE
WHEN LIST_PRICE IS NOT NULL THEN LIST_PRICE
ELSE 0
END)
) as Revenue
答案 1 :(得分:4)