1

我正在使用 Sybase 数据库,如何将出现在数据库中的 SQL 时间戳更改2012-03-23 11:27:04.870000为 unixtime。

我希望能够在 sql 中做这样的事情:

select time1, unix_time_function(time1) as time1_to_unixtime from mytable

可以做到吗?

4

2 回答 2

3

根据Wikipedia,UNIX 时间是自 1970 年 1 月 1 日以来经过的秒数(不包括闰秒)。

记住这一点(如果我没有完全失去它)它应该只是 1970-01-01 和你的时间之间的差异,以秒为单位:

SELECT time1,
       Datediff(SECOND, '1970-01-01', time1) AS time1_to_unixtime
FROM   mytable

我不确定是否DateDiff考虑闰秒,如果没有,可能需要进行一些调整。

DateDiffSybase 的文档在这里

于 2013-01-11T14:56:39.927 回答
0

Sybase 中的convert函数具有不同的选项来转换时间,例如

select convert(char(20),getdate(),101) --- value from 101 to 123

查看Sybase 信息中心中的这篇文章

于 2013-01-14T12:11:15.413 回答