I Postgres kan du bruge to_char()
funktion for at returnere århundredet, baseret på en given dato.
For at gøre dette skal du bruge CC
som det andet argument. Dette returnerer det tocifrede århundrede baseret på den angivne dato.
Eksempel
Her er et eksempel til at demonstrere.
SELECT to_char(date '2001-03-20', 'CC');
Resultat:
21
I dette tilfælde er datoen i det 21. århundrede, så jeg får et resultat på 21.
Bemærk, at det 21. århundrede starter 2001-01-01.
Her er, hvad der sker, hvis jeg bruger en dato før det.
SELECT to_char(date '2000-03-20', 'CC');
Resultat:
20
Tilføj ordenstalssuffikset
Du kan tilføje th
eller TH
til det andet argument for at tilføje ordinalindikatoren til århundredet.
th
tilføjer et ordinaltalsuffiks med små bogstaver og TH
tilføjer et suffiks med stort ordenstal.
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";
Resultat:
2001 CCth | 2001 CCTH | 2000 CCth | 2000 CCTH -----------+-----------+-----------+----------- 21st | 21ST | 20th | 20TH
Tilføj "Century"
Århundredeværdien og dens ordinære indikator kan nu sammenkædes med strengen "Century", hvis det kræves.
SELECT
concat(to_char(date '2001-03-20', 'CCth'), ' Century!');
Resultat:
21st Century!