sql >> Database >  >> RDS >> PostgreSQL

Veelgebruikte manier om tijdstempels te vergelijken in Oracle, PostgreSQL en SQL Server

Ik ben geen SQL Server-expert, maar ik weet dat dit werkt op Oracle en Postgres en ik vermoed dat het mogelijk werkt op MSSQL, maar ik heb geen manier om het ATM te testen.

AND creation_date < (CURRENT_TIMESTAMP - interval '5' day)
AND creation_date >= (CURRENT_TIMESTAMP - interval '15' day)

Of als je het datumtype gebruikt in plaats van het tijdstempel, zou je dit kunnen doen, maar ik ben er vrij zeker van dat het niet zou werken op MSSQL. En het DATE-type verschilt nogal tussen Oracle en Pg.

AND creation_date < CURRENT_DATE - 5
AND creation_date >= CURRENT_DATE - 15

Zoals opgemerkt in de opmerkingen voor OMG Ponies, kunt u alleen ints toevoegen aan datumtypen, niet aan tijdstempels. (Oracle cast in stilte de tijdstempel tot nu toe)



  1. SQL gebruik kolom van subselect in waar clausule

  2. Databasestructuur met dynamische velden

  3. Alle MySQL Stored Procedure-aanroepen vinden?

  4. Hoe kom je aan komma's in CSV-waarden bij het importeren van een tabel naar MySQL?