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

Извадете години от дата в PostgreSQL

В PostgreSQL можем да използваме - оператор за изваждане на една или повече години от дадена дата.

Примери

Можем да посочим интервали при изваждане от дати. Например, можем да използваме year или years за да извадите една или повече години от дата:

SELECT date '2030-01-20' - interval '1 year';

Резултат:

2029-01-20 00:00:00

И в множествено число:

SELECT date '2030-01-20' - interval '5 years';

Резултат:

2025-01-20 00:00:00

Посочено в месеци

Можем също да използваме еквивалентното число в месеци (или седмици или дни по този въпрос):

SELECT date '2030-01-20' - interval '12 months';

Резултат:

2029-01-20 00:00:00

Можем също да използваме цяло число, когато го указваме в дни:

SELECT date '2030-01-20' - 365;

Резултат:

2029-01-20

Или така:

SELECT date '2030-01-20' - integer '365';

Резултат:

2029-01-20

Добавяне на отрицателни стойности

Алтернативно можем да добавим отрицателна стойност към датата. В този случай можем да използваме отрицателна стойност с + знак:

Пример:

SELECT date '2030-01-20' + interval '-7 years';

Резултат:

2023-01-20 00:00:00

Можем да направим същото с опцията integer:

SELECT date '2030-01-20' + integer '-365';

Резултат:

2029-01-20

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Генерирана стойност в Postgres

  2. Как да извършите едно и също агрегиране на всяка колона, без да изброявате колоните?

  3. Операторът не съществува:цяло число =? когато използвате Postgres

  4. Има ли изчакване за неактивни PostgreSQL връзки?

  5. Надграждане на колона varchar до тип enum в postgresql