В SQL Server, transact-sql SYSDATETIMEOFFSET()
функцията връща datetimeoffset(7) стойност, която съдържа датата и часа на компютъра, на който се изпълнява екземплярът на SQL Server. Тази стойност включва изместването на часовата зона.
Примери за употреба по-долу.
Синтаксис
Синтаксисът е така:
SYSDATETIMEOFFSET ( )
Така че просто извиквате функцията без никакви аргументи.
Пример
Ето един основен пример:
SELECT SYSDATETIMEOFFSET() AS Result;
Резултат:
Result ---------------------------------- 2018-06-17 09:55:27.3221853 +10:00
Извличане на отместване на часовата зона
Можете да използвате DATEPART()
функция за връщане на изместването на часовата зона. Тази функция връща цяло число, което представлява изместването на часовата зона в минути.
Пример:
SELECT SYSDATETIMEOFFSET() AS 'Date/time', DATEPART(TZoffset, SYSDATETIMEOFFSET()) AS 'TZ Offset';
Резултат:
Date/time TZ Offset ---------------------------------- ----------- 2018-06-17 10:04:23.2316409 +10:00 600
Можете също да използвате функцията FORMAT(), за да върнете изместването на часовата зона като низ. По-конкретно, можете да използвате z
, zz
, и/или zzz
аргументи, за да го върнете в необходимия формат.
Пример:
SELECT SYSDATETIMEOFFSET() AS 'Date/time', FORMAT(SYSDATETIMEOFFSET(), 'zz') AS 'zz', FORMAT(SYSDATETIMEOFFSET(), 'zzz') AS 'zzz';
Резултат:
Date/time zz zzz ---------------------------------- -------------- -------------- 2018-06-17 10:27:33.7314840 +10:00 +10 +10:00
Преобразуване на връщаната стойност
Можете също да използвате функции като CONVERT()
за да преобразувате връщаната стойност в друг тип данни. Ето пример, където го преобразувам в дата стойност и време стойност:
SELECT CONVERT (date, SYSDATETIMEOFFSET()) AS 'Date', CONVERT (time, SYSDATETIMEOFFSET()) AS 'Time';
Резултат:
Date Time ---------- ---------------- 2018-06-17 10:08:29.6377947
Разбира се, след като направим това, губим изместването на часовата зона.
Вижте също TODATETIMEOFFSET()
което ви позволява да получите отместване на датата и времето стойност от datetime2 израз и SWITCHOFFSET()
което ви позволява да промените отместване на часовата зона.