小池啓仁 ヒロヒト応援ブログ By はてな

小池啓仁(コイケヒロヒト)の動画など。

小池啓仁 ヒロヒト応援ブログ By はてな

SQLで日付型へワイルドカードを適用する

SQLワイルドカード(%,_等)は、文字列型に使用するものです。
ですので、普通は、日付型には使用できません。
しかし、日付型から文字列型に変換してやると、結果的に日付型でもあたかもワイルドカードが適用できるのです。


たとえば、日付型がyyyy/mm/ddのフォーマットだとすると、以下は2008年のデータをセレクトします。

SELECT 日付型項目 FROM テーブル名 WHERE CONVERT(char, 日付型項目名, 111) like '2008%'

上記SQLは、MS-SQLサーバー系です。
ちなみに、CONVERT関数の引数の111は、yyyy/mm/ddフォーマットに対応しています。