• ベストアンサー

datetime型の日付検索について

宜しくお願いします。 datetime型のカラムに収められたデータから日付のみの検索方法が分かりません。 例えば、2005-12-25 10:20:30/2005-12-25 10:25:35 という様に、同じ日付ですが、時間が違う場合に、日付だけで検索する方法がわかりません。 どなたかご指導の程、宜しくお願い致します。 尚、MySQLのバージョンは、4.1.12です。

質問者が選んだベストアンサー

  • ベストアンサー
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 例の、2005-12-25 10:20:30と2005-12-25 10:25:35 の両方のデータを取得したいということでしょうか。 (2005-12-25の情報を取得したい) ということでしたら、datetime型のカラム名がREGISTDATEだとすると WHERE REGISTDATE>='2005-12-25 00:00:00' AND REGISTDATE<='2005-12-25 23:59:59' 2005年12月25日の0時0分0秒より大きく、かつ、2005年12月25日の23時59分59秒より小さい そうすれば2005-12-25の情報を取れます。

nikuq
質問者

お礼

ありがとうざいます! 早速やってみました。思っていた通りの結果が返されました。 本当にありがとうございます!

その他の回答 (1)

  • mac_mini
  • ベストアンサー率42% (54/128)
回答No.2

恐らく、date_format関数でも出来ますし、 substring関数でも出来ます。 例としては以下になります。 select * from テーブル where date_format(日付, '%Y-%m-%d') = '2005-12-25';

nikuq
質問者

お礼

ありがとうございます! Ano.1の方に教えていただいた方法と全く同じ結果が返されました。 どちらでも同じ結果が得られるので、後は、前後のSQLの状態で使い分けてみたいと思います。 本当にありがとうございました!!

関連するQ&A