SYSDATETIME (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsMicrosoft Fabric'te SQL analitiği uç noktasıMicrosoft Fabric'te DepoMicrosoft Fabric'te SQL veritabanı

Transact-SQL (T-SQL) fonksiyonu, SYSDATETIME SQL Server örneğinin çalıştığı bilgisayarın tarih ve saatini içeren datetime2(7) değerini döndürür.

Uyarı

SYSDATETIME ve SYSUTCDATETIME değerinden daha fazla kesirli saniye duyarlığı GETDATEGETUTCDATEvardır. SYSDATETIMEOFFSET sistem saat dilimi uzaklığını içerir. SYSDATETIME, SYSUTCDATETIME, ve SYSDATETIMEOFFSET tarih ve saat tiplerinden herhangi birine atanabilir.

Azure Synapse Analytics UTC-ni takip eder. UTC olmayan bir saat diliminde tarih ve saat bilgisini yorumlamanız gerekiyorsa, Azure Synapse Analytics'te AT TIME ZONE kullanın.

Uyarı

Azure SQL Veritabanı ve Microsoft Fabric'teki SQL veritabanı, varsayılan zaman diliminin evrensel koordineli zamandan (UTC) değiştirilmesini destekler. Veritabanı veya oturum seviyesinde saat dilimini değiştirirseniz, bu fonksiyon yapılandırılmış zaman dilimi değerine göre yerel zamanı döndürür. Daha fazla bilgi için bkz ALTER DATABASE SCOPED CONFIGURATION . SET ZAMAN BÖLGESI.

Tüm Transact-SQL tarih ve saat veri türlerine ve işlevlerine genel bakış için bkz. Tarih ve saat veri türleri ve işlevleri.

Transact-SQL söz dizimi kuralları

Sözdizimi

SYSDATETIME ( )

Dönüş türleri

datetime2(7)

Açıklamalar

Transact-SQL ifadeler, datetime2(7) ifadesine atıfta bulunabilecekleri herhangi bir yere atıfta SYSDATETIME bulunabilir.

SYSDATETIME belirsiz bir işlevdir. Bu fonksiyona referans veren görünümleri ve ifadeleri bir sütunda indeksleyemezsiniz.

Uyarı

SQL Server, tarih ve saat değerlerini GetSystemTimeAsFileTime() Windows API'si kullanarak alır. Doğruluk, SQL Server örneğinin çalıştığı bilgisayar donanımına ve Windows sürümüne bağlıdır. Bu API'nin duyarlığı 100 nanosaniye olarak sabittir. Doğruluğu belirlemek için GetSystemTimeAdjustment() Windows API'sini kullanabilirsiniz.

Örnekler

Aşağıdaki örneklerde, tarih, saat veya her ikisini birden döndürmek için geçerli tarih ve saati döndüren altı SQL Server sistem işlevi kullanılır. Değerler seri olarak döndürülür; Bu nedenle, kesirli saniyeleri farklı olabilir.

Bu örneklerde, mevcut tarihin 30 Nisan 2026 olduğunu varsayın.

A. Geçerli sistem tarih ve saatini alma

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

Sonuç kümesi aşağıdadır.

SYSDATETIME()        2026-09-01 16:15:37.7418724
SYSDATETIMEOFFSET()  2026-09-01 16:15:37.7418724 -06:00
SYSUTCDATETIME()     2026-09-01 22:15:37.7418724
CURRENT_TIMESTAMP    2026-09-01 16:15:37.740
GETDATE()            2026-09-01 16:15:37.740
GETUTCDATE()         2026-09-01 22:15:37.740
CURRENT_DATE         2026-09-01

B. Geçerli sistem tarihini alma

Aşağıdaki örnekte tarih ve saat değerlerinin tarih veri türüne nasıl dönüştürüldüğü gösterilmektedir.

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

Sonuç kümesi aşağıdadır.

SYSDATETIME()        2026-09-01
SYSDATETIMEOFFSET()  2026-09-01
SYSUTCDATETIME()     2026-09-01
CURRENT_TIMESTAMP    2026-09-01
GETDATE()            2026-09-01
GETUTCDATE()         2026-09-01
CURRENT_DATE         2026-09-01

C. Mevcut sistem zamanını alın

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

Sonuç kümesi aşağıdadır.

SYSDATETIME()        16:15:37.7418724
SYSDATETIMEOFFSET()  16:15:37.7418724
SYSUTCDATETIME()     22:15:37.7418724
CURRENT_TIMESTAMP    16:15:37.740
GETDATE()            16:15:37.740
GETUTCDATE()         22:15:37.740

Örnekler: Azure Synapse Analytics

D. Geçerli sistem tarih ve saatini alma

SELECT SYSDATETIME();

Sonuç kümesi aşağıdadır.

--------------------------
4/30/2026 1:10:02 PM