sql >> Database >  >> RDS >> Sqlserver

Waarom kan een geheel getal worden afgetrokken van DATETIME maar niet van het DATE-type?

Eigenlijk is het heel consequent. DATETIME is een type geërfd van eerdere edities van sql-server. Sinds editie 2008 DATETIME2 is geïntroduceerd en de mogelijkheid om gehele getallen op te tellen/af te trekken is verwijderd. Je kunt het nog steeds doen op DATETIME als een erfenis.

DATE , zoals DATETIME2 bestond ook al sinds 2008 en voor dit type is het optellen/aftrekken van getallen ook verboden.

Dit geeft je een foutmelding:

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

Dus alles is in orde :).



  1. Kan geen tabel maken met prepareStatement

  2. SQL Server 2012:een gekoppelde server toevoegen aan PostgreSQL

  3. MySQL:wanneer zijn Flush-privileges in MySQL echt nodig?

  4. Hoe gegevens in het tekstvak te laden vanuit de SQL-databasetabel