sql - 将 Epoch 时间戳转换为 sql server(人类可读格式)

标签 sql sql-server tsql

我在将 Unix 时间戳转换为 SQL Server 时间戳时遇到问题。

我在 Excel 工作表中有一个数据,我将通过工具导入该数据。因此,我正在寻找可以将 Epoch 时间戳转换为 sql server 时间戳的代码或语法。

我有 3 个具有相同格式的不同列。我如何更改这些列中的值。

例如:

  • 纪元时间戳 ---1291388960
  • SQL Server 时间戳--- 2010-12-03 15:09:20.000

最佳答案

使用DATEADD function :

SELECT DATEADD(ss, 1291388960, '19700101')

...指定日期 1970 年 1 月 1 日。在此示例中,它以 YYYYMMDD 格式提供。

DATEADD 将返回 DATETIME 数据类型,因此如果您已建立表和列 - 您可以根据需要使用该函数进行 INSERT/UPDATE。提供详细信息,我会澄清。一旦您有了可使用的 DATETIME,您就可以使用 CAST or CONVERT在 TSQL 中格式化日期。

关于sql - 将 Epoch 时间戳转换为 sql server(人类可读格式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4787827/

相关文章:

sql - 如何在 SQL 中根据 LastCreatedDate 选择不同的名称

mysql - 在一个查询中同时使用 GROUP BY 和 ORDER BY

java - 用 Java 处理数据库中的大列表

sql - 计算两个日期之间的差异

sql-server - 您如何解决 SQL 查询失败的问题?

mysql - sql 使用 count with group by 和 having

sql - 从多列中获取最小值和第二最小值的最简单方法是什么(MIN 函数不起作用)?

php - SQL Server 使用 PHP 返回的列名称被截断为 29 个字符

sql - where 子句中的多个 'in' 语句需要相互匹配

c# - 相当于 C# BigInteger 的 SQL