ホームページ >データベース >mysql チュートリアル >MySQL で今日の日付に基づいてレコードを取得するにはどうすればよいですか?

MySQL で今日の日付に基づいてレコードを取得するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-15 15:25:02812ブラウズ

How to Retrieve Records Based on Today's Date in MySQL?

MySQL で今日の日付に基づいてレコードを取得する

データベースを操作する場合、多くの場合、特定の日付または時刻の基準に基づいて結果をフィルタリングする必要があります。 。 MySQL の場合、日付列が今日の日付と一致するレコードを取得するには、次のアプローチを使用します:

元のクエリ:

SELECT users.id, DATE_FORMAT(users.signup_date, '%Y-%m-%d') 
FROM users 
WHERE users.signup_date = CURDATE()

には小さな問題があります。 Signup_date 列に格納されている datetime 値全体を CURDATE() の結果に変換します。これは、時刻コンポーネントを含まない現在の日付のみを表します。この比較は失敗する可能性があります。

これを修正するには、DATE() 関数を使用して、signup_date 列から日付コンポーネントのみを抽出し、現在の日付と適切に比較できるようにします。

SELECT users.id, DATE_FORMAT(users.signup_date, '%Y-%m-%d') 
FROM users 
WHERE DATE(signup_date) = CURDATE()

この変更により、MySQL は、signup_date カラムの日付部分が現在の日付と一致するかどうかを評価し、この基準を満たさないレコードを除外します。

以上がMySQL で今日の日付に基づいてレコードを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。