【问题标题】:subtract 6 hours from the default getdate() azure sql从默认的 getdate() azure sql 中减去 6 小时
【发布时间】:2019-01-15 09:36:24
【问题描述】:

使用 Azure SQL 我有以下内容:

CREATE TABLE [dbo].[receive_scans] (
[Id]                   INT          IDENTITY (1, 1) NOT NULL,
[barcode]              VARCHAR (50) NOT NULL,
[record_created]       DATETIME     DEFAULT (getdate()) NULL,
[cart_id]              VARCHAR (15) NULL,

我在很多地方看到他们在查询中谈论更改它,但找不到与上述时间戳相关的内容。

Azure SQL 比我们早 6 小时,它正在引发各种问题。

谢谢你,

附录:如果我需要在返回值或客户端或本地代码的查询中更改它,我不会按照我的方式来表达问题。在这种情况下,我们需要实际更改时间戳本身。

【问题讨论】:

    标签: sql azure azure-sql-database


    【解决方案1】:

    未经测试,但这应该可以工作:

    [record_created]   DATETIME default (dateadd(hour,-6,getdate()))
    

    【讨论】:

      【解决方案2】:

      您可以使用 UTC 日期函数 GETUTCDATE(),然后在您的代码中将 UTC 日期更改为本地时间。

      【讨论】:

        【解决方案3】:

        另一种查询方式如下:

          select * from [dbo].[receive_scans]
          where [record_created]  <   dateadd(hour,-6,GETDATE())
        

        【讨论】:

        • 谢谢,但与问题无关。
        猜你喜欢
        • 1970-01-01
        • 2017-04-23
        • 1970-01-01
        • 2015-05-13
        • 2017-11-30
        • 1970-01-01
        • 1970-01-01
        • 2012-08-03
        • 1970-01-01
        相关资源
        最近更新 更多