如何正確檢索特定日期範圍內的MySQL資料?

Patricia Arquette
發布: 2024-11-20 16:22:16
原創
188 人瀏覽過

How to Correctly Retrieve MySQL Data Within a Specific Date Range?

在MySQL 中擷取兩個日期之間的資料

在MySQL 中處理日期時間值時,必須考慮短日期格式的午夜預設值。這可能會導致在查詢某個日期範圍內的資料時出現意外結果。

例如,如果您要選擇created_at列位於「2011-12-01」和「2011-12-06」之間的記錄, ' 使用下列查詢:

SELECT `users`.*
FROM `users`
WHERE created_at >= '2011-12-01' AND created_at <= '2011-12-06'
登入後複製

可能不會回傳所需的結果。這是因為短日期格式隱式將時間解釋為午夜。

要修正此問題,請將查詢調整為使用「2011-12-07」作為上限:

SELECT `users`.*
FROM `users`
WHERE created_at >= '2011-12-01' AND created_at <= '2011-12-07'
登入後複製

或者,您可以使用 MySQL 的 date_add() 函數或 BETWEEN運算子來實現相同的目的result:

SELECT `users`.*
FROM `users`
WHERE created_at >= '2011-12-01' AND created_at <= date_add('2011-12-01', INTERVAL 7 DAY)
登入後複製
SELECT `users`.*
FROM `users`
WHERE created_at BETWEEN '2011-12-01', date_add('2011-12-01', INTERVAL 7 DAY)
登入後複製

透過考慮短日期格式的預設午夜解釋,您可以在 MySQL 中準確檢索指定日期範圍內的資料。

以上是如何正確檢索特定日期範圍內的MySQL資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板