MySQLでDATE(日付)型の検索をしようと思っています。


例えば、
2006-04-20
2002-07-20
2000-08-19
1998-04-20

の中から04-20の行を検索しようと思っています。

Googleで検索したのですが、明確な答えが見つからないので
よろしくお願いします

回答の条件
  • 1人2回まで
  • 登録:2006/05/02 02:32:58
  • 終了:2006/05/02 03:51:12

ベストアンサー

id:birdie-brain No.1

birdie-brain回答回数40ベストアンサー獲得回数42006/05/02 02:53:28

ポイント60pt

あまりスマートではありませんが、日付型のデータ列から年月日の「月」と「日」を取り出して、目的の月日と比較します。

SELECT * FROM [table name] WHERE MONTH([date field]) = 4 AND DAYOFMONTH([date field]) = 20;

日付演算で差分を使って、、、なんてことを考えると、閏年の取り扱いで痛い目にあうのでお気をつけ下さい(実話)。

id:amazontannken

検索できました。

どうも有難うございました。

2006/05/02 03:48:51

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません