TODATETIMEOFFSET (Transact-SQL)
Restitusce un valore datetimeoffset convertito da un'espressione datetime2.
Sintassi
TODATETIMEOFFSET ( expression , time_zone )
Argomenti
expression
Espressione che viene risolta in un valore datetime2.[!NOTA]
L'espressione non può essere di tipo text, ntext o image poiché questi tipi non possono essere convertiti in modo implicito in varchar o nvarchar.
time_zone
Espressione che rappresenta la differenza di fuso orario in minuti. L'intervallo è compreso tra i valori 14 e -13. L'espressione viene interpretata come ora locale in base al valore time_zone specificato.[!NOTA]
Se l'espressione è una stringa di caratteri, il formato deve essere {+|-}TZH:THM.
Tipo restituito
datetimeoffset. La precisione frazionaria è la stessa di quella dell'argomento datetime.
Esempi
A. Modifica della differenza di fuso orario della data e ora correnti
Nell'esempio seguente viene impostata la differenza di fuso orario della data e ora correnti sul valore -07:00.
DECLARE @todaysDateTime Datetime2
SELECT @todaysDateTime = GetDate();
SELECT TODATETIMEOFFSET (@todaysDateTime, '-07:00')
-- RETURNS 2007-08-30 15:51:34.7030000 -07:00
B. Modifica della differenza di fuso orario in minuti
Nell'esempio seguente la differenza di fuso orario viene impostata sul valore -120 minuti.
DECLARE @todaysDate Datetime2
SELECT @todaysDate = GetDate();
SELECT TODATETIMEOFFSET (@todaysDate, -120)
-- RETURNS 2007-08-30 15:52:37.8770000 -02:00
C. Aggiunta di una differenza di fuso orario di 13 ore
Nell'esempio seguente viene aggiunta una differenza di fuso orario di 13 ore a una data e a un'ora.
DECLARE @dateTime datetimeoffset(7)= '2007-08-28 18:00:30'
SELECT TODATETIMEOFFSET (@dateTime, '+13:00')
-- RETURNS 2007-08-28 18:00:30.0000000 +13:00
Vedere anche