4

現在の日付を取得し、それをテーブルにある 2 つの日付フィールドと比較して、そのクエリを満たす行を返す MySQL クエリを作成しようとしています。

ここに私の列があります 1- [from_date] タイプは日付です

クエリは、これらの日付の間にある行を返すと想定しています。

ここに私の質問があります

mysql_query("SELECT * FROM location WHERE from_date >= DATE() AND to_date <= DATE()")

私の問題は、何も返さないことです。列の型を DATETIME に切り替える必要がありますか?

前もって感謝します。

4

5 に答える 5

2

こちらのドキュメントを参照してください。ここでmysqlのドキュメント
を使用してくださいBETWEEN

于 2013-05-17T13:14:47.453 に答える
1

間で使用

mysql_query("SELECT * FROM location WHERE CURDATE() between from_date and to_date 
于 2013-05-17T13:14:14.163 に答える
0

このDATE()関数は、実際には、日付または日時式から日付部分を抽出するだけです。ただし、意図したとおりに現在の日付が返されるわけではありません。

現在の時刻を取得するには、NOW()またはを使用しCURDATE()ます。

mysql_query("SELECT * FROM location WHERE CURDATE() BETWEEN from_date AND to_date")

2 つの値の間で何かを見つけようとする場合、MySQL にはBETWEEN演算子もあります。

于 2013-05-17T13:15:12.597 に答える