こんにちは私はなぜこのステートメントがmySQLで機能しているのか疑問に思いました
SELECT COUNT(*) AS `numrows`
FROM (`myTable`)
WHERE DATE_FORMAT(creationDateTime, '%m/%d/%Y') BETWEEN '02/21/2011' AND '03/20/2011'
しかし、これはそうではありません
SELECT COUNT(*) AS `numrows`
FROM (`myTable`)
WHERE DATE_FORMAT(creationDateTime, '%m/%d/%Y') BETWEEN '12/21/2010' AND '03/20/2011'
最初のステートメントは行数の「xx」カウントを返し、2番目のステートメントは「0」を返します
私が見る唯一の違いは、「開始」日が2010年で、「終了」日が2011年であるということです。これが「2010年12月31日」から問い合わせた問題であるかどうかをテストするために、結果は0でしたが開始日を「2011年1月1日」に設定すると、その期間に作成されたレコードの数がわかりました。
mySQLのBETWEENと異なる年の日付の使用に関して私が見逃しているものはありますか?
助けてくれてありがとう!