2011-10-12 7 views
2

SQLで将来の日付を作成するにはどうすればよいですか?たとえば、私は自分の日付範囲を使用して、次の月(購入注文)のためにすべてを表示し、次に2ヶ月間別のものを表示できるようにしたいと思います。現在の日付/時刻にはfn NOW()SQL Server:将来の日付を作成する

おかげ

など、来月のレコードを表示するために、すべての私を助けていませんこれは、SQL Server 2008 R2でやっていることで、SQLクエリのためです。

+1

RDBMSとは何ですか? –

+0

これはどうやって使用しますか?日付のリストに対して外部結合する必要がありますか、それとも検索フィルターとして使用するだけですか? –

答えて

11

MySQLを使用する場合は使用することができます。

SELECT date_col FROM your_table 
WHERE date_col BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 1 MONTH) 

MS-SQL(それが動作するはずです)の場合:Oracleの場合

SELECT date_col FROM your_table 
WHERE date_col BETWEEN GETDATE() AND DATEADD(Month, 1, GETDATE()) 

を(それが動作するはずです):

SELECT date_col FROM your_table 
WHERE date_col BETWEEN SYSDATE AND add_months(SYSDATE, 1) 
3

DATEADD関数を使用して、別の日付との相対的な日付を作成できます。次の呼び出しは、将来的には、正確に1ヶ月の日付を生成します。

DATEADD(month, 1, GETDATE()) 

あなたが戻ってだけでなく、前方を行くために負の数を使用することができます。あなたが使うことができる他の多くの増分があります。年、曜日、四半期、ミリ秒など

関連する問題