【问题标题】:SQL converting date/time to unix timestamp [duplicate]SQL将日期/时间转换为unix时间戳[重复]
【发布时间】:2021-05-24 12:20:57
【问题描述】:

我正在运行一个 SSIS 作业,该作业将多个字符串列拉入 SQL 服务器 2016 数据库,但是我需要创建一个行索引,以便我的作业知道何时获取新数据。我有一个日期/时间字符串列,我正在拉入。我想将其转换为 unix 时间戳,以便我可以在我的代码中使用它来获取新数据。

有没有办法做到这一点?我的字符串列与我拉入的日期/时间如下所示: '2020.07.29 08:43:53' '2021.05.03 12:50:22' 等等。

将“日期时间”列中的所有字符串转换为 unix 时间戳的最佳方法是什么?

谢谢

【问题讨论】:

    标签: sql string ssis sql-server-2016 unix-timestamp


    【解决方案1】:

    您可以使用以下方法将字符串转换为datetime

    select convert(datetime, '2021.05.03 12:50:22')
    

    然后您可以使用以下方法将其转换为 Unix 纪元时间(自 1970-01-01 以来的秒数):

    select datediff(second, '1970-01-01', convert(datetime, '2021.05.03 12:50:22'))
    

    Here 是一个 dbfiddle。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-10-19
      • 2012-05-07
      • 1970-01-01
      • 2016-06-07
      • 2015-02-09
      • 1970-01-01
      相关资源
      最近更新 更多