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

明らかに私はこれを動作させることはできません。私はちょうど私の備考テーブルに支払われたテーブルを表示したい彼らが期限を過ぎているかどうかを確認してください。期日から30日以内になければなりません。sysdateとのSQLの日付比較を行う最良の方法 - due_dateに30日を追加する

sysdateの値を比較しようとすると、いつでもmy sqlの構文エラーが発生します。

+0

サンプルデータと必要な結果を入力してください。 –

+0

あなたがエラーを出してそれを完全に引用しないと言うのは無駄です。投稿する。 –

+0

私はremarks = paidとdue_dateを持つすべてのデータを30日以上取得したいと考えています。文字列 などの新しいOleDb.OleDbCommand 点心CONNSTRINGなどの新しいOleDb.OleDbConnection 薄暗いsqlquery関数として –

答えて

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の日付のものに動作するように注意してください –

関連する問題