次の方法で共有


GETUTCDATE (Transact-SQL)

適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric のSQL 分析エンドポイント Microsoft Fabric のウェアハウス

として現在のデータベース システムのタイムスタンプを返す、 datetime 値。 データベースのタイム ゾーン オフセットは含まれません。 この値は、現在の UTC 時 (協定世界時) を表します。 この値は、SQL Server のインスタンスが実行されているコンピューターのオペレーティング システムから取得されます。

Note

1 秒未満の有効桁数で比較すると、SYSDATETIME と SYSUTCDATETIME の方が GETDATE と GETUTCDATE よりも高い精度を得ることができます。 SYSDATETIMEOFFSET には、システムのタイム ゾーン オフセットが含まれます。 SYSDATETIME、SYSUTCDATETIME、および SYSDATETIMEOFFSET は、date 型と time 型の任意の変数に割り当てることができます。

Transact-SQL の日付と時刻のデータ型および関数の概要については、「日付と時刻のデータ型および関数 (Transact-SQL)」を参照してください。

Transact-SQL 構文表記規則

構文

GETUTCDATE()

Note

SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

戻り値の型

datetime

解説

Transact-SQL ステートメントから、datetime 式を参照できる任意の場所で GETUTCDATE を参照できます。

GETUTCDATE は、非決定的関数です。 この関数を列内で参照するビューと式には、インデックスを付けることができません。

次の例では、現在の日付と時刻を返す 6 つの SQL Server システム関数を使用して、日付、時刻、またはその両方を取得しています。 値は順番に返されるため、秒の小数部が異なる可能性があります。

A. 現在のシステム日付と時刻を取得する

SELECT 'SYSDATETIME()      ', SYSDATETIME();  
SELECT 'SYSDATETIMEOFFSET()', SYSDATETIMEOFFSET();  
SELECT 'SYSUTCDATETIME()   ', SYSUTCDATETIME();  
SELECT 'CURRENT_TIMESTAMP  ', CURRENT_TIMESTAMP;  
SELECT 'GETDATE()          ', GETDATE();  
SELECT 'GETUTCDATE()       ', GETUTCDATE();  

次に結果セットを示します。

 SYSDATETIME()         2007-05-03 18:34:11.9351421   
 SYSDATETIMEOFFSET()   2007-05-03 18:34:11.9351421 -07:00   
 SYSUTCDATETIME()      2007-05-04 01:34:11.9351421   
 CURRENT_TIMESTAMP     2007-05-03 18:34:11.933   
 GETDATE()             2007-05-03 18:34:11.933   
 GETUTCDATE()          2007-05-04 01:34:11.933  

B. 現在のシステム日付を取得する

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

次に結果セットを示します。

 SYSDATETIME()        2007-05-03  
 SYSDATETIMEOFFSET()  2007-05-03  
 SYSUTCDATETIME()     2007-05-04  
 CURRENT_TIMESTAMP    2007-05-03  
 GETDATE()            2007-05-03  
 GETUTCDATE()         2007-05-04  

C: 現在のシステム時刻を取得する

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

次に結果セットを示します。

 SYSDATETIME()        18:25:01.6958841
 SYSDATETIMEOFFSET()  18:25:01.6958841
 SYSUTCDATETIME()     01:25:01.6958841
 CURRENT_TIMESTAMP    18:25:01.6930000
 GETDATE()            18:25:01.6930000
 GETUTCDATE()         01:25:01.6930000