人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

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

●質問者: disca
●カテゴリ:コンピュータ 生活
✍キーワード:9月 EX SELECT SQL データ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● Iwa
●10ポイント

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’


2 ● kimizu
●40ポイント

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の変数を使ったことが無かったので大変勉強になります。早速試してみます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ