다음을 통해 공유


SYSUTCDATETIME(Transact-SQL)

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System(PDW)Microsoft Fabric의 SQL 분석 엔드포인트Microsoft Fabric의 WarehouseMicrosoft Fabric의 SQL 데이터베이스

SQL Server 인스턴스가 실행되고 있는 컴퓨터의 날짜와 시간이 포함된 datetime2 값을 반환합니다. 날짜와 시간은 UTC 시간(Coordinated Universal Time)으로 반환됩니다. 소수 자릿수 초의 전체 자릿수는 1-7자리입니다. 기본 전체 자릿수는 7자리입니다.

참고

SYSDATETIMESYSUTCDATETIME .보다 GETDATEGETUTCDATE소수 자릿수 초 정밀도가 더 높습니다.

SYSDATETIMEOFFSET 에는 시스템 표준 시간대 오프셋이 포함됩니다.

SYSDATETIME, SYSUTCDATETIME및 날짜 및 SYSDATETIMEOFFSET 시간 형식 중 하나의 변수에 할당할 수 있습니다.

모든 Transact-SQL 날짜 및 시간 데이터 형식 및 함수에 대한 개요는 날짜 및 시간 데이터 형식 및 함수(Transact-SQL)를 참조하세요.

Transact-SQL 구문 표기 규칙

구문

SYSUTCDATETIME ( )  

반환 형식

datetime2

설명

Transact-SQL 문은 datetime2 식을 참조할 SYSUTCDATETIME 수 있는 모든 위치를 참조할 수 있습니다.

SYSUTCDATETIME 는 비결정적 함수입니다. 열에서 이 함수를 참조하는 뷰와 식은 인덱싱될 수 없습니다.

참고

SQL Server는 Windows API를 사용하여 GetSystemTimeAsFileTime() 날짜 및 시간 값을 가져옵니다. 정확도는 SQL Server 인스턴스가 실행되고 있는 컴퓨터의 하드웨어와 Windows 버전에 따라 달라집니다. 이 API의 정밀도는 100나노초로 고정됩니다. 정확도는 Windows API를 GetSystemTimeAdjustment() 사용하여 확인할 수 있습니다.

다음 예에서는 현재 날짜 및 시간을 반환하는 6개의 SQL Server 시스템 함수를 사용하여 시간, 날짜 또는 두 가지 모두 반환합니다. 값은 순차적으로 반환되므로 소수 자릿수 초가 서로 다를 수 있습니다.

A. 날짜 및 시간 함수에서 반환되는 형식 표시

다음 예에서는 날짜 및 시간 함수가 반환하는 다양한 형식을 보여 줍니다.

SELECT SYSDATETIME() AS [SYSDATETIME()]  
    ,SYSDATETIMEOFFSET() AS [SYSDATETIMEOFFSET()]  
    ,SYSUTCDATETIME() AS [SYSUTCDATETIME()]  
    ,CURRENT_TIMESTAMP AS [CURRENT_TIMESTAMP]  
    ,GETDATE() AS [GETDATE()]  
    ,GETUTCDATE() AS [GETUTCDATE()];  

결과 집합은 다음과 같습니다.

SYSDATETIME()      2007-04-30 13:10:02.0474381
SYSDATETIMEOFFSET()2007-04-30 13:10:02.0474381 -07:00
SYSUTCDATETIME()   2007-04-30 20:10:02.0474381
CURRENT_TIMESTAMP  2007-04-30 13:10:02.047
GETDATE()          2007-04-30 13:10:02.047
GETUTCDATE()       2007-04-30 20:10:02.047

B. 날짜 및 시간을 날짜로 변환

다음 예제에서는 날짜 및 시간 값을 날짜 데이터 형식 으로 변환하는 방법을 보여줍니다.

SELECT CONVERT (date, SYSDATETIME())  
    ,CONVERT (date, SYSDATETIMEOFFSET())  
    ,CONVERT (date, SYSUTCDATETIME())  
    ,CONVERT (date, CURRENT_TIMESTAMP)  
    ,CONVERT (date, GETDATE())  
    ,CONVERT (date, GETUTCDATE());  

결과 집합은 다음과 같습니다.

2007-04-30
2007-04-30
2007-04-30
2007-04-30
2007-04-30
2007-04-30

C. 날짜 및 시간 값을 시간으로 변환

다음 예제에서는 날짜 및 시간 값을 time* 데이터 형식으로 변환하는 방법을 보여줍니다.

DECLARE @DATETIME DATETIME = GetDate();
DECLARE @TIME TIME
SELECT @TIME = CONVERT(time, @DATETIME)
SELECT @TIME AS 'Time', @DATETIME AS 'Date Time'

결과 집합은 다음과 같습니다.

Time             Date Time  
13:49:33.6330000 2009-04-22 13:49:33.633