SYSUTCDATETIME()
dan GETUTCDATE()
adalah dua fungsi tanggal/waktu T-SQL yang tersedia untuk digunakan di SQL Server. Fungsi-fungsi ini mengembalikan tanggal dan waktu komputer yang menjalankan instance SQL Server. Kedua fungsi mengembalikan tanggal dan waktu sebagai waktu UTC (Waktu Universal Terkoordinasi).
Jadi, kedua fungsi melakukan hal yang sama. Hampir.
Inilah perbedaan kedua fungsi ini:
GETUTCDATE()
mengembalikan nilainya sebagai datetime nilai.SYSUTCDATETIME()
mengembalikan nilainya sebagai datetime2 nilai.
Ini berarti bahwa SYSUTCDATETIME()
memberikan lebih banyak detik presisi. datetime2 tipe data juga memiliki rentang yang lebih besar dari datetime .
Contoh
Berikut ini contoh untuk mendemonstrasikan nilai yang dikembalikan oleh setiap fungsi:
SELECT GETUTCDATE() AS GETUTCDATE, SYSUTCDATETIME() AS SYSUTCDATETIME;
Hasil:
+-------------------------+-----------------------------+ | GETUTCDATE | SYSUTCDATETIME | |-------------------------+-----------------------------| | 2018-06-13 11:04:55.237 | 2018-06-13 11:04:55.2396676 | +-------------------------+-----------------------------+
Jadi ini mirip dengan perbedaan antara SYSDATETIME()
dan GETDATE()
.
Mana Yang Harus Saya Gunakan?
Microsoft menyarankan agar kami menggunakan datetime2 dengan nilai tanggal/waktu kami. Tipe data ini sejajar dengan standar SQL, dan lebih portabel daripada datetime .
Oleh karena itu, gunakan SYSUTCDATETIME()
kecuali Anda memiliki alasan khusus untuk tidak melakukannya.