我想在我的SQL查詢的where子句中添加一個case或if語句。
我有一張開始和結束日期的旅程時間表,以及每天的布爾型字段來表示旅程在當天發生的地點。這裏是我到目前爲止,但我發現了不正確的語法錯誤:where語句中的case語句 - SQL Server
declare @date datetime
set @Date = '05/04/2012'
declare @day nvarchar(50)
set @day = 'Monday'
Select * From Times
WHERE (StartDate <= @Date) AND (EndDate >= @Date)
CASE WHEN @day = 'Monday' THEN
AND (Monday = 1)
WHEN @day = 'Tuesday' THEN
AND (Tuesday = 1)
ELSE
AND (Wednesday = 1)
END
在我看來,如果你有表的一個設計問題,有沒有辦法,你應該永遠有列星期一,星期二,星期三等。您應該記住daya專欄,並填寫您想要的日期或數字值,以查找您想要的日期。如果超過一天適用,則使用相關表格。 – HLGEM 2012-01-04 17:17:49