Sql 如何将时间戳转换为十进制,反之亦然

Sql 如何将时间戳转换为十进制,反之亦然,sql,Sql,我想把时间戳转换成十进制,反之亦然。 例如,我的时间戳为2015年3月10日09.35.25格式,十进制为20150328.114534格式。我想将此时间戳转换为十进制或反之亦然。在ANSI标准SQL中,您可以执行以下操作: select (extract(year from col)*100000 + extract(month from col)*100 + extract(day from col)*1 + (extract(hour fro

我想把时间戳转换成十进制,反之亦然。
例如,我的时间戳为2015年3月10日09.35.25格式,十进制为20150328.114534格式。我想将此时间戳转换为十进制或反之亦然。

在ANSI标准SQL中,您可以执行以下操作:

select (extract(year from col)*100000 +
        extract(month from col)*100 +
        extract(day from col)*1 +
        (extract(hour from col)*3600 + extract(minute from col)*60 + extract(second from col)) / (24.0*60*60)
       )

请为您正在使用的特定数据库添加标记。请添加更多详细信息;就像您正在使用的SQL DB一样,为了获得更好的响应,您正在使用的SQL函数等等。您的两个示例中不是有相同的时间戳吗?(这样我们可以看到时间部分是如何转换的。)您是否尝试过检查数据库软件的文档?大多数数据库都有日期-时间函数,这使它变得简单,但很乏味。@jarlh。既然你提到了这一点,我意识到我不理解数字小数部分的逻辑。