-1
我想在日期時間數據類型列(列DATE_AND_TIME
)中過濾以檢測時間是在高峯時間而不是在週末日。在我的SQL語句下面,我收到以下錯誤:在SQL語句中比較日期時間的語法不正確
Incorrect syntax near '>'.
我在做什麼錯?
SELECT
CASE
WHEN DATEPART(HH, DATE_AND_TIME) BETWEEN 7 AND 9
AND DATE_AND_TIME != DATEPART(DW, DATE_AND_TIME + @@DATEFIRST - 1) > 5
THEN 'RUSH HOUR'
WHEN DATEPART(HH, DATE_AND_TIME) BETWEEN 16 AND 19
AND DATE_AND_TIME != DATEPART(DW, DATE_AND_TIME + @@DATEFIRST - 1) > 5
THEN 'RUSH HOUR'
ELSE 'NOT RUSHHOUR'
END
FROM
TRAFFIC
你的代碼是一個爛攤子。嘗試闡明你的邏輯並將其與代碼相匹配。 –
你的錯誤在這裏: 'DATEPART(DW,DATE_AND_TIME + @@ DATEFIRST - 1)'你不能同時進行兩次比較。或者,離開'> 5'或'!= DATE_AND_TIME' –
什麼是'@@ DATEFIRST'? –