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

Вземете Century от дата в PostgreSQL

В Postgres можете да използвате to_char() функция за връщане на века въз основа на дадена дата.

За да направите това, използвайте CC като втори аргумент. Това връща двуцифрения век въз основа на предоставената дата.

Пример

Ето пример за демонстрация.

SELECT to_char(date '2001-03-20', 'CC');

Резултат:

21

В този случай датата е в 21-ви век, така че получавам резултат 21.

Имайте предвид, че 21-ви век започва на 2001-01-01.

Ето какво се случва, ако използвам дата преди това.

SELECT to_char(date '2000-03-20', 'CC');

Резултат:

20

Добавете суфикса за редовно число

Можете да добавите th или TH към втория аргумент, за да добавите порядковия индикатор към века.

th добавя суфикс за редовен номер с малки букви и TH добавя суфикс за редово число с главни букви.

SELECT 
  to_char(date '2001-03-20', 'CCth') AS "2001 CCth",
  to_char(date '2001-03-20', 'CCTH') AS "2001 CCTH",
  to_char(date '2000-03-20', 'CCth') AS "2000 CCth",
  to_char(date '2000-03-20', 'CCTH') AS "2000 CCTH";

Резултат:

 2001 CCth | 2001 CCTH | 2000 CCth | 2000 CCTH 
-----------+-----------+-----------+-----------
 21st      | 21ST      | 20th      | 20TH

Добавете „Век“

Стойността на века и неговият порядков индикатор вече могат да бъдат свързани с низа „Century“, ако е необходимо.

SELECT 
  concat(to_char(date '2001-03-20', 'CCth'), ' Century!');

Резултат:

21st Century!

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Топ GUI инструменти за PostgreSQL

  2. Подобрения в разделянето в PostgreSQL 11

  3. Escape SQL LIKE стойност за Postgres с psycopg2

  4. Опростете вложен случай, когато израз

  5. Заявката на Postgres за проверка на низ е число