2017-11-11 165 views
0
SELECT * 
FROM reciepts 
WHERE Remarks = 'PAID' and DATEADD(day,30,Due_date) =<SYSDATE 

顯然我不能讓這幹活只是想表明已標記支付了我的發言表,然後將表看看他們是否已經過了截止日期,從截止日期起30天。最好的辦法讓SQL日期比較與SYSDATE - 增加30天DUE_DATE

每當我嘗試比較sysdate值時,我的sql語法錯誤就會觸發。

+0

請提供樣本數據和預期結果。 –

+0

說你得到一個錯誤,然後不全面引用它是沒用的。發表它。 –

+0

我想要獲取過去30天內具有備註=付款和due_date的所有數據。 –

回答

1

如果我理解正確,你想做什麼,然後在MS Access語法是:

SELECT * 
FROM reciepts 
WHERE Remarks = "PAID" and DATEADD("d", 30, Due_date) < date(); 

這是更好地把職能的「常數」的習慣來獲得,而不是列:

SELECT * 
FROM reciepts 
WHERE Remarks = "PAID" and Due_date < DATEADD("d", -30, date()); 
+0

@ErikvonAsmuth。 。 。我完全同意。好點子。 –

+0

非常感謝這段代碼工作 –

+0

Imma現在注意事情如何工作在SQL日期的東西 –