PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Често срещан начин за сравняване на клеймо за време в Oracle, PostgreSQL и SQL Server

Не съм експерт по SQL Server, но знам, че това работи на Oracle и Postgres и подозирам, че може да работи на MSSQL, но няма начин да го тествам ATM.

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

Или ако използвате типа дата вместо клеймо за време, можете да направите това, но съм почти сигурен, че няма да работи на MSSQL. И типът DATE е доста различен между Oracle и Pg.

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

Както беше отбелязано в коментарите за OMG Ponies, можете да добавяте само int към типове дати, но не и времеви отпечатъци. (Oracle безшумно прехвърля клеймото за време до дата)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Сортиране на месеци, докато ги конвертирам в текст

  2. SQLAlchemy:Проверете дали дадена стойност е в списък

  3. Вземете редове за последните 10 дати

  4. Как използвате променливи в прост PostgreSQL скрипт?

  5. Създаването на тригер за вмъкване на дъщерна таблица връща объркваща грешка