回答

收藏

如何从DateTimeOffset对象中选择UTC偏移量?

技术问答 技术问答 89 人阅读 | 0 人回复 | 2023-09-12

我目前正在使用:
. w& v% n* a) `' s0 cSELECT DATEPART(TZ,SYSDATETIMEOFFSET())然而,它在几分钟内返回偏移量。我想保留它’-05:00’而不是’-300’的格式
% \% M, @$ V2 E( t5 l/ _2 d/ x谢谢你。7 e' Z5 V, J: a1 p2 c
                                                               
4 [  y; K+ P% J% I2 m2 a) p! r    解决方案:                                                               
: S9 u9 d* P9 R, W1 m                                                                如果要在datetimeoffset在变量的末尾提取准确的字符串 -05:00可以使用SQL Server字符串操作。我认为不能使用内置的SQL
4 y# r8 O, {1 pDateTime执行此操作的函数。您可以使用它CAST我相信它默认为函数ISO 8601格式:
' M3 }. p: U; ^* O" A2 Y7 bdeclare @timeStr nvarchar(50) = CAST(SYSDATETIMEOFFSET() as nvarchar(50))select right(@timeStr,6)若要更清楚,可采用126格式类型CONVERT明确告诉函数SQL Server使用ISO 8601:
. l; ~  v& Z0 x! g" I4 _declare @timeStr nvarchar(50) = CONVERT(nvarchar(50),SYSDATETIMEOFFSET(),126)select right(@timeStr,6)在我所在的时区,这两种方法都了:7 d; K( r. Q( m8 q
-06:00有关CAST和CONVERT更多信息,请参见此处。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则