sql >> Databasteknik >  >> RDS >> Sqlserver

Varför kan heltal subtraheras från DATETIME men inte DATE-typ

Egentligen är det väldigt konsekvent. DATETIME är en typ som ärvts från tidigare utgåvor av sql server. Sedan 2008 års utgåva, DATETIME2 har införts, och möjligheten att addera/subtrahera heltal har tagits bort. Du kan fortfarande göra det på DATETIME som ett arv.

DATE , som DATETIME2 hade funnits sedan 2008 också, och för denna typ är det också förbjudet att lägga till/subtrahera siffror.

Detta ger dig ett felmeddelande:

DECLARE @Yesterday DATETIME2 = GETDATE();
SELECT @Yesterday-1;

Så allt är bra :).



  1. Vad är den maximala längden på ett tabellnamn i Oracle?

  2. Kan inte ansluta från Android till SQL Server direkt

  3. SQL Server 2008-versionen av OVER(... Rader ogränsade föregående)

  4. $result =mysql_query()