sql >> Databáze >  >> RDS >> PostgreSQL

Získejte století z data v PostgreSQL

V Postgresu můžete použít to_char() funkce pro vrácení století na základě daného data.

Chcete-li to provést, použijte CC jako druhý argument. Tím se vrátí dvouciferné století založené na poskytnutém datu.

Příklad

Zde je příklad k demonstraci.

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

Výsledek:

21

V tomto případě je datum ve 21. století, takže dostávám výsledek 21.

Všimněte si, že 21. století začíná 2001-01-01.

Zde je to, co se stane, když použiji datum před tím.

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

Výsledek:

20

Přidejte příponu pořadového čísla

Můžete přidat th nebo TH k druhému argumentu, aby se ke století přidal pořadový ukazatel.

th přidá malou příponu řadového čísla a TH přidá velkou příponu řadové číslovky.

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";

Výsledek:

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

Připojit „Century“

Hodnotu století a její pořadový ukazatel lze nyní v případě potřeby zřetězit s řetězcem „Century“.

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

Výsledek:

21st Century!

  1. Seznam porovnávacích operátorů SQL Server

  2. Deaktivace účtu SA v SQL Server (příklad T-SQL)

  3. Jak používat EXISTS Logical Operator v SQL Server - SQL Server / TSQL výukový program, část 125

  4. Jak převést časové pásmo v MySQL