Faktisk er det meget konsekvent. DATETIME
er en type, der er arvet fra tidligere udgaver af sql server. Siden 2008-udgaven, DATETIME2
er blevet indført, og muligheden for at tilføje/fratrække heltal fjernet. Du kan stadig gøre det på DATETIME
som en arv.
DATE
, f.eks. DATETIME2
havde også eksisteret siden 2008, og for denne type er tilføjelse/fradrag af tal også forbudt.
Dette giver dig en fejl:
DECLARE @Yesterday DATETIME2 = GETDATE();
SELECT @Yesterday-1;
Så alt er i orden :).