DATETIME 列からの日付の選択
シナリオでは、DATETIME 列から日付コンポーネントを抽出し、レコードを検索しようとしています。その日。ただし、使用している方法は効果的ではないようです。この問題に対処する別のアプローチを検討してみましょう。
MySQL には、DATETIME カラムから日付を抽出するために使用できる DATE() 関数が用意されています。この関数を使用すると、次のようにクエリを調整できます:
SELECT * FROM data WHERE DATE(datetime) = '2009-10-20' ORDER BY datetime DESC;
DATE() を使用すると、日付部分を明示的に抽出し、指定された日付に一致するレコードのみが返されるようにします。
もう 1 つのオプションは、ワイルドカードを使用して LIKE 演算子を使用することです。このメソッドでは、クエリに少し変更を加える必要があります。
SELECT * FROM data WHERE datetime LIKE '2009-10-20%' ORDER BY datetime DESC;
この場合、ワイルドカード (%) を使用すると、日付部分以降の任意の文字が一致し、指定された日付で始まるすべてのレコードが返されます。ただし、特に大規模なデータセットの場合、LIKE は他の方法よりも効率が低くなる可能性があるため、LIKE の使用によるパフォーマンスへの影響を考慮することが重要です。
以上がMySQL の DATETIME カラムから日付に基づいてレコードを効率的に選択するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。