2013-01-06 93 views
0

我有一個mysql表,其中有一個due_date字段,它只是一個整數值。當前日比較的sql查詢

dealID | due_day 
1  | 15 
2  | 25 
3  | 10 
4  | 9 
5  | 31 
6  | 20 

我想查詢此表只顯示14天之前的數據。例如,今天是01/05/13,如果我查詢這張表,它應該只顯示我dealID 1,3和9.我應該怎麼處理這種情況?

+0

什麼數據庫您使用的? (MySQL/SQL Server/Oracle/...) – Andomar

+0

我正在使用MySql。 –

+0

你可能意思是1,3和4(在這個例子中沒有ID 9)...... – PinnyM

回答

0

所以根據user1951544的回答,這就是我想出的。

SELECT due_day 
    FROM deals 
    WHERE (due_day - DAYOFMONTH(NOW())) <=14 
1

您可以簡單地使用DATE_SUB來減去當前日期的天數然後DAYOFMONTH來獲得當天。

您可以使用所提到的功能創建查詢。

0

查詢:

SQLFIDDLEExample

SELECT 
dealID, 
due_day 
FROM Table1 
WHERE due_day < 14 + DAYOFMONTH(NOW()) 

結果:

| DEALID | DUE_DAY | 
-------------------- 
|  1 |  15 | 
|  3 |  10 | 
|  4 |  9 |