DATETIME
「created_at」という名前のフィールドを持つテーブルがあります。次のような 2 つのクエリを実行してみます。
SELECT * FROM myTable WHERE created_at BETWEEN '2015-03-15 10:25:00' AND '2015-03-25 10:30:00';
SELECT * FROM myTable WHERE created_at BETWEEN STR_TO_DATE('2015-03-15 10:25:00', '%Y-%m-%d %H:%i:%s') AND STR_TO_DATE('2015-03-25 10:30:00', '%Y-%m-%d %H:%i:%s');
私は常に最初のクエリを使用していましたが、最近、2 番目のアプローチが比較する最良の方法であると説明している記事に出くわしましたDATETIME
。残念ながら、そのアプローチが最善の方法である理由についての説明は含まれていません。
さて、いくつか質問があります:
- これら2つのアプローチに違いはありますか?
- どちらの方法がより好ましいですか?
ありがとう!