【发布时间】:2016-10-19 06:57:52
【问题描述】:
我的表中有 DATETIME 列,具有 2015-04-23 11:17:49 属性
尝试将其转换为 unix 时间戳,根据 mysql 文档,我只需将该字段放入 UNIX_TIMESTAMP() 函数中,我会得到 -> 1223423442 - 时间戳,但它不起作用,我只有 0000-00- 00 00:00:00
尝试了很多东西:
// doesn't work
UNIX_TIMESTAMP(CAST(`updated` AS CHAR(100))) AS updated_at,
// doesn't work
UNIX_TIMESTAMP(`updated`) AS updated_at,
//doesn't work
UNIX_TIMESTAMP(STR_TO_DATE(CAST(`created` AS CHAR(100)), \'%M %e %Y %h:%i%p\'))
AS created_at'
// doesn't work
UNIX_TIMESTAMP(STR_TO_DATE(`created`, '%M %e %Y %h:%i%p'))
AS created_at
没有 `` 也不行,我是不是遗漏了什么?
【问题讨论】:
-
你为什么使用
CAST?使用UNIX_TIMESTAMP(your_field) -
用过的,看看第二行“不起作用”,同样的故事 0000-00-00 00:00:00
-
请提供一个最低限度的非工作示例。这个有效:sqlfiddle.com/#!9/9eecb7d/64679
标签: mysql datetime unix-timestamp