Bagikan melalui


SYSDATETIMEOFFSET (Transact-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)

Mengembalikan nilai datetimeoffset(7) yang berisi tanggal dan waktu komputer tempat instans SQL Server berjalan. Offset zona waktu disertakan.

Untuk gambaran umum semua jenis dan fungsi data tanggal dan waktu Transact-SQL, lihat Jenis dan Fungsi Data Tanggal dan Waktu (Transact-SQL).

Konvensi sintaks transact-SQL

Sintaksis

SYSDATETIMEOFFSET ( )  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Jenis Hasil

datetimeoffset(7)

Keterangan

Pernyataan T-SQL dapat merujuk ke SYSDATETIMEOFFSET di mana saja mereka dapat merujuk ke ekspresi datetimeoffset .

SYSDATETIMEOFFSET adalah fungsi nondeterministik. Tampilan dan ekspresi yang mereferensikan fungsi ini dalam kolom tidak dapat diindeks.

Catatan

SQL Server mendapatkan nilai tanggal dan waktu dengan menggunakan GetSystemTimeAsFileTime() Windows API. Akurasi tergantung pada perangkat keras komputer dan versi Windows tempat instans SQL Server berjalan. Presisi API ini diperbaiki pada 100 nanodetik. Akurasi dapat ditentukan dengan menggunakan GetSystemTimeAdjustment() Windows API.

Contoh

Contoh berikut menggunakan enam fungsi sistem SQL Server yang mengembalikan tanggal dan waktu saat ini untuk mengembalikan tanggal, waktu, atau keduanya. Nilai dikembalikan dalam seri; oleh karena itu, detik pecahannya mungkin berbeda.

J. Memperlihatkan format yang dikembalikan oleh fungsi tanggal dan waktu

Contoh berikut menunjukkan berbagai format yang dikembalikan oleh fungsi tanggal dan waktu.

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

Berikut adalah hasil yang ditetapkan.

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. Mengonversi tanggal dan waktu ke tanggal

Contoh berikut menunjukkan kepada Anda cara mengonversi nilai tanggal dan waktu menjadi date.

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

Berikut adalah hasil yang ditetapkan.

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

C. Mengonversi tanggal dan waktu ke waktu

Contoh berikut menunjukkan kepada Anda cara mengonversi nilai tanggal dan waktu menjadi time.

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

Berikut adalah hasil yang ditetapkan.

SYSDATETIME()      13:18:45.3490361
SYSDATETIMEOFFSET()13:18:45.3490361
SYSUTCDATETIME()   20:18:45.3490361
CURRENT_TIMESTAMP  13:18:45.3470000
GETDATE()          13:18:45.3470000
GETUTCDATE()       20:18:45.3470000

Lihat Juga

CAST dan CONVERT (Transact-SQL)
Tipe dan Fungsi Data Tanggal dan Waktu (Transact-SQL)