Artikel ini memberikan perbandingan berdampingan dari tipe data tanggal dan waktu di SQL Server mengenai jangkauan, akurasi, dan ukuran penyimpanannya.
Tipe Data | Rentang | Akurasi | Ukuran Penyimpanan |
---|---|---|---|
tanggal | 0001-01-01 melalui 9999-12-31 | 1 hari | 3 byte |
waktu kencan | 1753-01-01 melalui 9999-12-31 00:00:00 melalui 23:59:59,997 | 0,00333 detik | 8 byte |
datetime2 | 0001-01-01 melalui 9999-12-31 00:00:00 melalui 23:59:59.9999999 | 100 nanodetik | 6 hingga 8 byte* |
datetimeoffset | 0001-01-01 melalui 9999-12-31 00:00:00 melalui 23:59:59.9999999 -14:00 melalui +14:00 | 100 nanodetik | 8 hingga 10 byte* |
waktu kecil | 1900-01-01 melalui 2079-06-06 00:00:00 melalui 23:59:59 | 1 menit | 4 byte |
waktu | 00:00:00,0000000 melalui 23:59:59.9999999 | 100 nanodetik | 3 hingga 5 byte* |
* Perhatikan bahwa jumlah penyimpanan yang tercantum di sini adalah jumlah yang tercantum dalam dokumentasi Microsoft. Namun, tipe data ini juga menggunakan 1 byte untuk menyimpan presisi. Oleh karena itu, tambahkan 1 byte ke jumlah yang tercantum di sini untuk gambaran yang lebih lengkap tentang persyaratan penyimpanan.
Misalnya, ukuran penyimpanan untuk datetime2 akan berkisar dari 7 hingga 9 byte jika Anda menyertakan byte tambahan.
Mengonversi Antar Jenis Data Ini
Karena perbedaan akurasi dan rentang antara tipe data ini, Anda harus ekstra hati-hati saat mengonversinya. Secara khusus, mengonversi dari jenis presisi tinggi ke jenis presisi lebih rendah dapat mengakibatkan hilangnya sebagian nilai, dan nilai yang tersisa dibulatkan.
Lihat Konversi Antara Tipe Data Tanggal &Waktu di SQL Server untuk contoh.