首页  >  问答  >  正文

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 天前718

全部回复(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
  • 取消回复