2016-03-07 21 views
0

我無法設置SQL以在當前日期前後兩週顯示所有信息。這是我目前在做什麼:從當前日期起2周內進行SQL搜索

Select WRK.Wrk, WRK.Client, WRK.Status, WRK.TAT, WRK.Due 
From WRK 
WHERE WRK.Due >= now() 
Order By WRK.Due Desc, WRK.Status Desc 

這讓我因一切或在當前日期後,但是當我嘗試添加行之前和當前日期我得到的錯誤後,表示2周。

謝謝

+1

用你正在使用的數據庫標記你的問題。 –

+0

由於星期總是7天,這是一個簡單的「BETWEEN now()-14 and now()+ 14')。你只需要將'+/- 14'翻譯成你的DBMS使用的語法來添加/減去日期/時間戳中的日期。 – dnoeth

+0

ANSI SQL:'current_date + interval'14'day' –

回答

0

日期/時間函數在數據庫中顯着不同。使用now()讓我想起MySQL。在MySQL的語法是:

where wrk.Due between date_sub(curdate(), interval 2 weeks) and date_add(curdate, interval 2 weeks) 

注意between包括結束日期,所以這可能是由天在任一方向被關閉。

您可以在其他數據庫中實現類似的邏輯,但具體功能看起來不同。