SYSUTCDATETIME (Transact-sql)
Döner bir datetime2bilgisayarın saati ve tarihi içeren değeri örneği SQL Serverçalışıyor. Tarih ve Saat utc saati (Eşgüdümlü Evrensel Saat) döndürülür. Kesirli ikinci duyarlık belirtimi 7 basamak 1 aralığına sahiptir. Varsayılan duyarlık 7 basamak olduğunu.
[!NOT]
SYSDATETIME ve sysutcdate daha fazla Kesirli saniye duyarlık getdate ve getutcdate daha var. SYSDATETIMEOFFSET, sistem saat dilimi uzaklığını içerir. SYSDATETIME, sysutcdate ve SYSDATETIMEOFFSET bir Tarih ve saat türleri herhangi bir değişkene atanabilir.
Tüm genel bakış için Transact-SQLbkz: Tarih ve Saat veri türleri ve işlevler, Tarih ve Saat veri türleri ve işlevler.
Transact-SQL Sözdizim Kuralları
Sözdizimi
SYSUTCDATETIME ( )
Dönüş Türü
datetime2
Açıklamalar
Transact-SQLdeyimleri SYSUTCDATETIME için her yerde onlar için gelebilir gelebilir bir datetime2ifade.
SYSUTCDATETIME nondeterministic bir işlevdir. Bir sütundaki bu işleve başvuran görünüm ve ifadeler dizinlenemez.
[!NOT]
SQL Server 2012Tarih ve Saat değerlerini kullanarak alır GetSystemTimeAsFileTime()Windows API'si. Bilgisayar donanımı ve Windows sürümünde hangi doğruluğu bağlıdır örneği SQL Serverçalışıyor. Bu API duyarlığını 100 nanosaniye sabittir. Doğruluğu kullanarak belirlenebilir GetSystemTimeAdjustment()Windows API'si.
Örnekler
Aşağıdaki örnekler, altı kullanın SQL Servergeçerli tarihi döndürür ve Tarih, Saat veya her ikisini de geri dönmek için zaman sistem işlevleri. Değerler bir dizide döndürülür, bu yüzden kesirli saniyeleri farklı olabilir.
A.Tarih ve saat işlevleri tarafından döndürülen biçimlerini gösteren
Aşağıdaki örnek, Tarih ve saat işlevleri tarafından döndürülen farklı biçimlerde gösterir.
SELECT SYSDATETIME() AS SYSDATETIME
,SYSDATETIMEOFFSET() AS SYSDATETIMEOFFSET
,SYSUTCDATETIME() AS SYSUTCDATETIME
,CURRENT_TIMESTAMP AS CURRENT_TIMESTAMP
,GETDATE() AS GETDATE
,GETUTCDATE() AS GETUTCDATE;
SELECT SYSDATETIME() AS SYSDATETIME
,SYSDATETIMEOFFSET() AS SYSDATETIMEOFFSET
,SYSUTCDATETIME() AS SYSUTCDATETIME
,CURRENT_TIMESTAMP AS CURRENT_TIMESTAMP
,GETDATE() AS GETDATE
,GETUTCDATE() AS GETUTCDATE;
Sonuç kümesi buradadır.
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.Tarih için Tarih ve saat dönüştürme
Aşağıdaki örnek Tarih ve saat değerleri dönüştürmek gösterilmiştir date.
SELECT CONVERT (date, SYSDATETIME())
,CONVERT (date, SYSDATETIMEOFFSET())
,CONVERT (date, SYSUTCDATETIME())
,CONVERT (date, CURRENT_TIMESTAMP)
,CONVERT (date, GETDATE())
,CONVERT (date, GETUTCDATE());
SELECT CONVERT (date, SYSDATETIME())
,CONVERT (date, SYSDATETIMEOFFSET())
,CONVERT (date, SYSUTCDATETIME())
,CONVERT (date, CURRENT_TIMESTAMP)
,CONVERT (date, GETDATE())
,CONVERT (date, GETUTCDATE());
Sonuç kümesi buradadır.
2007-04-30
2007-04-30
2007-04-30
2007-04-30
2007-04-30
2007-04-30
C.Tarih ve saat değerleri için zaman dönüştürme
Aşağıdaki örnek Tarih ve saat değerleri dönüştürmek gösterilmiştir time.
DECLARE @DATETIME DATETIME = GetDate();
DECLARE @TIME TIME
SELECT @TIME = CONVERT(time, @DATETIME)
SELECT @TIME AS 'Time', @DATETIME AS 'Date Time'
Sonuç kümesi buradadır.
Time Date Time
13:49:33.6330000 2009-04-22 13:49:33.633