不是很好的标题,所以我道歉.
出于某种原因,(我不是那个人,我离题了)我们有一个表结构,其中日期的字段类型是varchar.(奇).
我们有一些日期,例如:
1932-04-01 00:00:00 and 1929-07-04 00:00:00
Run Code Online (Sandbox Code Playgroud)
我需要做一个查询,将这些日期字符串转换为unix时间戳,但是,如果你转换1970年以前的日期,它将返回0.
有任何想法吗?
非常感谢!
编辑:错误的日期格式.哎呀.
Flu*_*key 17
啊哈!我们找到了解决方案!
要做的SQL:
SELECT DATEDIFF( STR_TO_DATE('04-07-1988','%d-%m-%Y'),FROM_UNIXTIME(0))*24*3600 -> 583977600
SELECT DATEDIFF( STR_TO_DATE('04-07-1968','%d-%m-%Y'),FROM_UNIXTIME(0))*24*3600 -> -47174400
Run Code Online (Sandbox Code Playgroud)
这可能有助于将来参考.
你可以在这里测试一下:http://www.onlineconversion.com/unix_time.htm