1
我有表產品與attr:Id, discount_pct, price, number_of_sold
。可以是null
。從列空選擇另一個選擇
我試圖讓選擇查詢總結discount_pct * price * number_of_sold
,如果discount_pct
不爲空,否則,總和price * number_of_sold
我有表產品與attr:Id, discount_pct, price, number_of_sold
。可以是null
。從列空選擇另一個選擇
我試圖讓選擇查詢總結discount_pct * price * number_of_sold
,如果discount_pct
不爲空,否則,總和price * number_of_sold
這聽起來像你想
SUM(coalesce((1 - discount_pct/100) * price, price) * number_of_sold)
假設discount_pct
是0和之間的值100(即20表示20%的折扣)。如果discount_pct
爲非NULL或爲NULL,則(1 - discount_pct/100) * price
將計算折扣價格。3210返回列表中的第一個非NULL值。因此,如果可以計算出完整的表達式,則返回折扣價格;如果它不能乘以銷售數量,則返回價格。
令人驚歎。謝謝 – ivanz 2014-12-19 02:57:28