Всъщност е много последователен. DATETIME
е тип, наследен от предишни издания на sql сървър. От изданието от 2008 г., DATETIME2
е въведена и е премахната възможността за добавяне/изваждане на цели числа. Все още можете да го направите на DATETIME
като наследство.
DATE
, като DATETIME2
също съществува от 2008 г. и за този тип добавянето/изваждането на числа също е забранено.
Това ви дава грешка:
DECLARE @Yesterday DATETIME2 = GETDATE();
SELECT @Yesterday-1;
Така че всичко е наред :).