TODATETIMEOFFSET (Transact-SQL)
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW)
返回从 datetime2 表达式转换的 datetimeoffset 值。
语法
TODATETIMEOFFSET ( datetime_expression , timezoneoffset_expression )
参数
datetime_expression
一个解析为 datetime2 值的表达式。
注意
该表达式的类型不能为 text、ntext 或 image,因为这些类型无法隐式转换为 varchar 或 nvarchar。
timezoneoffset_expression
是表示时区偏移量(分钟)(如果为整数)的表达式,例如 -120;或表示小时和分钟数的表达式(如果为字符串),例如“+13.00”。 范围为 +14 到 -14(小时)。 此表达式被解释为指定的 timezoneoffset_expression 的本地时间。
注意
如果表达式是字符串,其格式必须为 {+|-}TZH:THM。
返回类型
datetimeoffset。 小数精度与 datetime_expression 参数相同。
示例
A. 更改当前日期和时间的时区偏移量
下面的示例将当前日期和时间的时区偏移量更改为时区 -07:00
。
DECLARE @todaysDateTime DATETIME2;
SET @todaysDateTime = GETDATE();
SELECT TODATETIMEOFFSET (@todaysDateTime, '-07:00');
-- RETURNS 2019-04-22 16:23:51.7666667 -07:00
B. 更改时区偏移量(以分钟为单位)
下面的示例将当前时区更改为 -120
分钟。
SELECT TODATETIMEOFFSET(SYSDATETIME(), -120)
-- RETURNS: 2019-04-22 11:39:21.6986813 -02:00
C. 添加 13 小时时区偏移量
下面的示例将 13 小时时区偏移量添加到日期和时间。
SELECT TODATETIMEOFFSET(SYSDATETIME(), '+13:00')
-- RETURNS: 2019-04-22 11:39:29.0339301 +13:00
另请参阅
CAST 和 CONVERT (Transact-SQL)
日期和时间数据类型及函数 (Transact-SQL)
AT TIME ZONE (Transact-SQL)