Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SYSDATETIMEOFFSET() Примери в SQL Server (T-SQL)

В 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() което ви позволява да промените отместване на часовата зона.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. WinRT System.Data - Свързване към SQL

  2. Актуализиране на пощенски акаунт в база данни (SSMS)

  3. Извикване на съхранена процедура с параметър със стойност на таблица от java

  4. Как се наричат ​​тръби?

  5. Трябва ли да използвам !=или <> за не е равно в T-SQL?