MySQL では、時間要素を無視して日付のみに焦点を当てた日付比較が必要になることがよくあります。これは、特定の日付範囲内のデータをフィルタリングする場合に重要です。 DATETIME
を使用して CHAR()
列を直接比較すると、エラーが発生する可能性があります。
信頼できる解決策には、DATE_ADD()
:
<code class="language-sql">SELECT * FROM `players` WHERE us_reg_date BETWEEN '2000-07-05' AND DATE_ADD('2011-11-10', INTERVAL 1 DAY)</code>
このクエリは DATE_ADD()
を利用して、日を追加することで終了日 ('2011-11-10') を含む範囲を定義します。これにより、希望する日付範囲を完全にカバーできます。
BETWEEN
と DATE_ADD()
を組み合わせると、MySQL で正確な日付ベースのフィルタリングが可能になり、CHAR()
で発生するエラーが回避され、指定された終了日が比較に確実に含まれることが保証されます。
以上が時間コンポーネントなしでMySQLの日付を正確に比較する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。