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’
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
のような感じでいいはずです。
ありがとうございます。SQLの変数を使ったことが無かったので大変勉強になります。早速試してみます。