我在将Unix时间戳转换为sql server时间戳时遇到问题。
我有一个数据在excel工作表中,我将通过一个工具导入该数据。因此,我正在寻找一种代码或语法,可以将纪元时间戳转换为sql server时间戳。
我有3个相同格式的不同列。如何更改这些列中的值。
例如:
发布于 2011-01-25 06:31:35
我有3个不同的列,格式相同。如何更改这些列中的值。
要更新表中的3列,可以将纪元(1970年1月1日)的DATEADD秒与列名配对,即
update tbl set
datetimecol1 = dateadd(s, epochcol1, '19700101'),
datetimecol2 = dateadd(s, epochcol2, '19700101'),
datetimecol3 = dateadd(s, epochcol3, '19700101')
您不能就地更新,因为bigint列不能同时是datetime列。您必须将它们更新到其他3列中。
发布于 2011-01-25 06:19:18
SELECT DATEADD(ss, 1291388960, '19700101')
...specifying输入1970年1月1日的日期。在本例中,它以YYYYMMDD格式提供。
DATEADD将返回DATETIME数据类型,因此如果您建立了一个表和列--您可以根据需要使用函数插入/更新。提供细节,我会澄清的。一旦有了要处理的日期时间,就可以使用CAST or CONVERT在TSQL中格式化日期。
https://stackoverflow.com/questions/4787827
复制相似问题