當我使用此查詢:不一致的MySQL DATEDIFF行爲
SELECT COUNT(*) FROM `my_table` WHERE DATEDIFF(NOW(), updated) > 2
MySQL的執行沒有錯誤的查詢,我得到那些未在最後2天更新的行數。但是,如果我改變這樣的查詢:
SELECT * FROM `my_table` WHERE DATEDIFF(NOW(), updated) > 2
我得到以下錯誤:
#1305 - FUNCTION mydatabase.DATEDIFF does not exist
任何想法,爲什麼會這樣?
有趣的是,phpMyAdmin在執行查詢之前添加了一個LIMIT子句,失敗了。如果我自己將LIMIT添加到查詢中,就像你所建議的那樣,查詢執行得很好。必須是phpMyAdmin版本2.6.4-pl3中的錯誤。謝謝您的幫助。 – Geoff