从时区获取HOUR

时间:2018-12-07 13:57:12

标签: sql sql-server tsql datetimeoffset

我的数据库在Azure中。我需要当地时间(以色列)。

SELECT GETDATE() AT TIME ZONE 'Israel Standard Time', 
        DATEPART(HOUR,(GETDATE() AT TIME ZONE 'Israel Standard Time'))

返回13:

(No column name)                (No column name)
2018-12-07 13:43:34.893 +02:00  13

我需要它返回15,因为它是13(+2)= 15 我不想添加2个硬编码。

1 个答案:

答案 0 :(得分:1)

尝试一下:

SELECT GETDATE() AT TIME ZONE 'Israel Standard Time'
      ,DATEPART(HOUR,(GETDATE() AT TIME ZONE 'Israel Standard Time'))
      ,DATEPART(HOUR,(CONVERT(DATETIMEOFFSET, GETDATE(), 121) AT TIME ZONE 'Israel Standard Time'))