【问题标题】:Converting integer milliseconds value to date time format in sql server在sql server中将整数毫秒值转换为日期时间格式
【发布时间】:2016-06-22 20:26:51
【问题描述】:

我有一个名为“开始时间”的列,其中填充了“1465815600000”之类的数字并不断增加。此列是从一年 1970 jan 1st 12.00:00:000 AMjune 2016 中某个日期的毫秒数。这是整数,我需要将其转换为日期时间格式。

EX:1465815600000 => 2016-06-12-12:00:00(类似这样)

有人可以帮我写这个函数吗?

【问题讨论】:

  • 适用于哪个数据库?对于 mysql,它就像 from_unixtime($ts/1000) 一样微不足道
  • here
  • 如果这些建议中的任何一个有帮助,请点赞/选择一个答案来支持你的 peepz
  • 谢谢你们,它的SQL Server

标签: sql-server datetime


【解决方案1】:

试试这个:

TSQL:

SELECT DATEADD(SECOND,1465815600,'1970-1-1')

MYSQL:

SELECT DATE_ADD('1970-1-1',INTERVAL 1465815600 SECOND)

为什么是SECOND?因为给定1465815600000大于最大整数值,会导致算术溢出异常,所以为了防止它,我们将它除以1000并使用SECOND而不是MILISECOND

【讨论】:

    猜你喜欢
    • 2013-10-31
    • 2019-10-21
    • 2019-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多