【问题标题】:SQL - UTC Date Time ConversionSQL - UTC 日期时间转换
【发布时间】:2019-11-26 01:04:01
【问题描述】:

我们应用程序中的交易日期时间以 UTC 格式捕获。 我需要帮助根据本地日期时间使交易过期。

示例场景:

积分有效期:

Local Time: 2019-07-17 13:55:22.317
UTC Time: 2019-07-17 08:25:22.317

我如何使积分到期@2019-07-17 15:00:00.000 - 因为到期引擎(基于 UTC 运行)仍未达到那个时间。

过期服务在 CST 服务器中运行,并且在 UTC 到达该时间之前可能不会过期。 :(

我在这里错过了什么。?

【问题讨论】:

  • 哪个数据库引擎和版本?
  • SQL 2018...但是如果我的引擎在 CST 运行。我将如何使特定于该时区的点过期...?我是否应该将 UTC 以及相应的本地时间作为两个不同的字段进行跟踪。 ..?
  • 您需要跟踪交易时区,并根据下面的答案评估相对于该时区的到期时间。

标签: sql timezone utc


【解决方案1】:

SQL Server 2017 及更高版本支持at time zone

这允许您将本地日期时间评估为目标时区

select getdate() at time zone 'UTC'

【讨论】:

  • 是的。这没有错,但是如果所有需要的是 UTC,那么您可以简单地调用 getutcdate()sysutcdatetime()at time zone 可用于其他时区。
猜你喜欢
  • 1970-01-01
  • 2011-07-11
  • 1970-01-01
  • 2020-12-01
  • 2013-08-18
  • 2014-01-05
  • 1970-01-01
  • 2021-12-31
  • 2012-10-07
相关资源
最近更新 更多