Sebenarnya sangat konsisten. DATETIME
adalah tipe yang diwarisi dari sql server edisi sebelumnya. Sejak edisi 2008, DATETIME2
telah diperkenalkan, dan kemungkinan penambahan/pengurangan bilangan bulat dihapus. Anda masih dapat melakukannya pada DATETIME
sebagai warisan.
DATE
, seperti DATETIME2
sudah ada sejak 2008, juga, dan untuk jenis ini penambahan/pengurangan angka juga dilarang.
Ini memberi Anda kesalahan:
DECLARE @Yesterday DATETIME2 = GETDATE();
SELECT @Yesterday-1;
Jadi semuanya baik-baik saja :).