2013-04-08 84 views
1

我已經在我的mysql數據庫中設置了一個字段作爲「時間戳」,但它仍然返回查詢的時間爲yyyy:mm:dd:time。我將它設置爲時間戳,因爲我想要1970年以來的毫秒。我如何實現這一點?mysql時間戳不在紀元中

+0

mysql時間戳有1秒的分辨率。它們不包括毫秒,但可以平均地乘以1000以轉換爲毫秒,例如, 'select unix_timestamp(timestampfield)* 1000'。 – 2013-04-08 03:37:27

+0

直到5.6.4,其中'TIMESTAMPS' *可以*具有毫秒。見http://dev.mysql.com/doc/refman/5.6/en/fractional-seconds.html – 2013-04-08 04:21:50

回答

0

您使用哪種語言?在PHP中,您可以使用函數strtotime將MySQL時間戳轉換爲紀元中的秒數。如果絕對絕望,也可以使用字符串解析來獲取時間戳的每個部分,並自己計算出時間段的秒數。

+0

PHP,然後回到JS,希望有一種方式直接從MySQL返回提取紀元,歡呼聲,將試試吧 – user1637477 2013-04-08 03:35:21

+0

你可以在MySQL中做到這一點。查看我以前的答案,將Unix時間戳存儲爲INT,然後調用'FROM_UNIXTIME()'執行更多可讀查詢。 – mitnosirrag 2013-04-09 01:34:08

0

只需將Unix時間戳存儲爲INT即可。然後當你從數據庫中調用它時,你可以在服務器端處理它以獲得你想要的。