sql >> Databasteknik >  >> RDS >> PostgreSQL

Vanligt sätt att jämföra tidsstämpel i Oracle, PostgreSQL och SQL Server

Jag är ingen SQL Server-expert men jag vet att det här fungerar på Oracle och Postgres och jag misstänker att det kan fungera på MSSQL men jag har inget sätt att testa det ATM.

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

Eller om du använder datumtypen istället för tidsstämpeln kan du göra detta men jag är ganska säker på att det inte skulle fungera på MSSQL. Och DATE-typen skiljer sig ganska mycket mellan Oracle och Pg.

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

Som noterades i kommentarerna för OMG-ponnyer kan du bara lägga till ints till datumtyper, inte tidsstämplar. (Oracle kastar tyst tidsstämpeln till datum)



  1. Hur man exporterar data från Amazon DynamoDB till MySQL-server

  2. DELETE VS DROP i SQL

  3. Row Goals, Del 4:Anti Join Anti Pattern

  4. Upprätthålla underklassintegritet i en relationsdatabas