首頁  >  問答  >  主體

mysql 取得時間函數unix_timestamp 問題?

使用mysql 取得目前日期毫秒數,日期太大,會取得不了。

SELECT unix_timestamp('2037-08-26 14:07:57')

#SELECT unix_timestamp('2067-05-26 14:07:57')

#我把年份從37 改為67 ,輸出就變成0了。

本人有sql 語句需要比較時間欄位(精確到秒)關鍵程式碼如下:

unix_timestamp( time ) between unix_timestamp( 'start ') and unix_timestamp( 'end' )

個人覺得 時間上限應該要大一點,但是,因為,mysql 限制 最大不能超過2038年,

請問,有什麼比較好的辦法解決這個問題?請大神賜教?感激不盡…

某草草某草草2701 天前716

全部回覆(2)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-05-27 17:41:04

    INT型最大值是:2147483647(有符號)

    用最大值轉換為時間是:2038/1/19 11:14:7

    你輸入2067-05-26 14:07:57

    你想讓Mysql怎麼回應你??

    從INT型來講,時間戳用到2038/1/19 11:14:7 就會用完了...不過到那時候應該就有新的時間戳記數方式吧..

    回覆
    0
  • 仅有的幸福

    仅有的幸福2017-05-27 17:41:04

    因此最多只能到2038年…

    https://en.m.wikipedia.org/wi...

    回覆
    0
  • 取消回覆