16bit!

エンジニアじゃなくなっちゃった人が何かを書くブログ

【SQL】直近1年分のデータを抽出する

SQLで直近1年分のデータを抽出したい時の書き方



//以下はinput_dateというカラムがシステム日付でここ1年以内のものを抽出するサンプル

select * from table
where input_date >= (sysdate - 365) 



ただ、これだと閏年の時に1日足りなくてずれてしまう。

そこで、日数単位ではなく月単位で計算すると・・・


select * from table
where input_date >= ADD_MONTHS ( sysdate , -12 ) 



こうなる。

こっちだと閏年もたぶん大丈夫(なはず)。