2015-09-26 15 views
0

好的,所以我得到了這個可能非常簡單的問題,但只能找到相反方法的答案。Mysql使用unixtime值進行時間戳選擇時的日期時間值錯誤

我有這樣的MySQL列:timestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,

當我嘗試:

select * from table where timestamp > 1440586108

我得到以下警告:Incorrect datetime value '1440586108' for column timestamp at row 1

應該怎麼做正確?

回答

1

時間戳有格式yyyy-mm-dd H:i:s

the docs

你需要的是FROM_UNIXTIME()

Select * from table where timestamp > FROM_UNIXTIME(1440586108) 
+0

還好,但我得到了時間的unix時間戳,什麼是正確的MySQL功能離子將其轉換爲MySQL時間戳格式? – dfherr

+0

https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_from-unixtime看起來像它會做你想要的 –

+0

當你接受我的編輯(從unixtime添加),我會接受你的回答 – dfherr

1

使用FROM_UNIXTIME()這樣

SELECT * FROM table 
WHERE timestamp > FROM_UNIXTIME(1440586108)