4
我有一個查詢,其中我試圖使用引用兩列的case語句。如何在case語句中引用多個列
數據:
用戶表:
ID_User sUserName
1 Test
2 Test2
3 Test3
客戶表:
ID last name Redeemed paid
1 Cust1 10/1/16 9/15/16
2 Cust2 9/16/16 9/14/16
3 Cust3 10/4/16 9/30/16
4 Cust4 10/5/16 10/1/16
查詢:查詢
SELECT Users.sUserName, Customers.LastName, CASE WHEN customers.Redeemed < '9/28/16' AND
customers.paid < '9/28/16' THEN '3' ELSE '4' END AS Amount
FROM Customers LEFT OUTER JOIN
Users ON Customers.lGreeterId = Users.ID_User
WHERE (Customers.Redeemed BETWEEN @startdate AND @enddate)
輸出:
susername last name amount
Test Cust1 4
Test2 Cust2 4
Test3 Cust3 4
Test3 Cust4 4
輸出應該是:
susername last name amount
Test Cust1 3
Test2 Cust2 3
Test3 Cust3 4
Test3 Cust4 4
爲什麼我會得到他們所有的 「其他人」 的結果?如果贖回額度小於指定日期OR
,我希望返回'3'。
付費和贖回都是數據類型datetime
@jpw基於該輸出,這就是我的想法OP漸漸在.. – JohnHC
我正在尋找AND,而不是OR - – Shmewnix
@Shmewnix然後它是你的數據類型banjaxed – JohnHC