SQL の質問です。SELECT文で検索する場合、DATE型で年以外、つまり指定した月と日からさかのぼって10日前までのデータを抽出したいのですが、どのように記述すれば良いのでしょうか?(ex.. 09月02日から10日前までのデータ)。よろしくお願いいたします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:Iwa No.1

回答回数120ベストアンサー獲得回数6

ポイント10pt

http://www.hatena.ne.jp/1138332832#

人力検索はてな - SQL の質問です。SELECT文で検索する場合、DATE型で年以外、つまり指定した月と日からさかのぼって10日前までのデータを抽出したいのですが、どのように記述すれば良いの..

全てのSQLで共通ではないので一概には言えません。

例えばMySQLならDATE_ADDを使って以下のように。


SELECT * FROM table_name WHERE date_data >= DATE_ADD(’2005-09-02’, interval -10 day) AND date_data <= ’2005-09-02’

id:kimizu No.2

回答回数726ベストアンサー獲得回数21

ポイント40pt

http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/sq_kj07_5.htm

SQL 日付計算、曜日計算、月末日計算、時間計算、期間計算、日付抽出、日付比較 - SAK Streets

//変数定義

ToDt data;

FromDt date;


//変数にToDtに指定の日付を入れて、

ToDt := to_date(’2005.09.02 00:00:00’, ’yyyy.mm.dd hh24:mi:ss’);


//FromDtに10日前を計算して入れ、

FromDt := ToDt - 1 * 10;


//抽出する

SELECT * FROM TESTTBL

WHERE TESTTBL.MkDate between

FtomDt and ToDt


のような感じでいいはずです。

id:disca

ありがとうございます。SQLの変数を使ったことが無かったので大変勉強になります。早速試してみます。

2006/01/27 13:08:15

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません