• 締切済み

指定した年月までのデータを取得するSQL文

いつもお世話になっております。 今、指定した年月までのデータを取得するSQL文を考えています。 例:NENGETSU_DATEカラムがDATE型で、 データとして、2008/11/12と、2008/11/18と、2008/12/12が入っているとして、11月だけのデータを取得したい。(今回は、2008/11/12と、2008/11/18を取得) どのようなSQL文を書けばよろしいでしょうか。 よろしくお願いいたします。

みんなの回答

回答No.2

日付のカラムに索引が付いているなら、日付項目を関数で加工すると索引が使われなくなります。 索引があるなら、右辺側で11月中かどうかの範囲指定をする方が合理的です。 where 日付 between to_date('2008/11/01','yyyy/mm/dd') and to_date('2008/11/30','yyyy/mm/dd'); 日付のカラムに索引が付いていないなら、日付のカラムを関数で加工してもしなくても 変わらないので、#1さんのような書き方が簡単明瞭で良いかと思います。

すると、全ての回答が全文表示されます。
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

よくあるのは文字列に変換してしまう方法 to_char(NENGETSU_DATE, 'yyyy/mm') = '2008/11'

すると、全ての回答が全文表示されます。

専門家に質問してみよう