請考慮以下查詢:MySQL的timeDiff測量返回意想不到的結果
SELECT submitted_time FROM jobs WHERE timediff(NOW(), submitted_time) < '24:00:00'
我希望這回有包含時間戳,這是過去24小時內的「submitted_time」列中的所有行,不過我我收到了如下結果:
2017-01-18 14:58:34
2017-01-16 14:58:34
如果我運行查詢SELECT NOW()
我得到2017-01-25 18:58:32
這似乎是正確的。
什麼是陌生人還是那個我在DB更近的行如:
2017-01-24 15:17:13
正在被退回不。
我希望我做出了一個明顯的錯誤,有人可以指出,而不是開始瘋狂下降。
您可以直接比較日期時間值和時間戳值。沒有理由以這種方式做timediff。在過去的24小時內只涉及查詢和使用DATE_ADD。看到這個:http://www.gizmola.com/blog/archives/51-Exploring-Mysql-CURDATE-and-NOW.-The-same-but-different..html – gview
非常感謝我將採取的鏈接現在看看,看看我是否可以適應我的查詢,不幸的是MySql不是我的強項:) – Aphire