問題:
使用DATE_FORMAT 函數比較日期時,用戶到意外結果,比較日期之前的記錄出現在結果中。如何解決這個問題?
分析:
問題源自於將日期當作字串進行比較,而不是其實際日期值。 DATE_FORMAT 將日期轉換為字串,然後按字典順序比較,導致結果不正確。
解決方案:
要準確比較日期,查詢應直接比較日期值,使用 DATE() 函數只擷取日期資訊。以下修改後的查詢完成此操作:
<code class="sql">select date_format(date(starttime),'%d-%m-%Y') from data where date(starttime) >= date '2012-11-02';</code>
在此查詢中:
透過直接比較日期,查詢可以有效過濾掉日期為在'2012-11-02'之前。
以上是如何解決MySQL中使用DATE_FORMAT的日期比較結果不正確?的詳細內容。更多資訊請關注PHP中文網其他相關文章!