W Postgresie możesz użyć to_char()
funkcja zwracająca wiek na podstawie podanej daty.
Aby to zrobić, użyj CC
jako drugi argument. Zwraca dwucyfrowy wiek na podstawie podanej daty.
Przykład
Oto przykład do zademonstrowania.
SELECT to_char(date '2001-03-20', 'CC');
Wynik:
21
W tym przypadku data jest w XXI wieku, więc otrzymuję wynik 21.
Zauważ, że XXI wiek zaczyna się 01.01.2001.
Oto, co się stanie, jeśli użyję wcześniejszej daty.
SELECT to_char(date '2000-03-20', 'CC');
Wynik:
20
Dodaj sufiks liczby porządkowej
Możesz dodać th
lub TH
do drugiego argumentu, aby dodać wskaźnik porządkowy do wieku.
th
dodaje sufiks liczby porządkowej małej litery i TH
dodaje sufiks liczby porządkowej pisanej wielkimi literami.
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";
Wynik:
2001 CCth | 2001 CCTH | 2000 CCth | 2000 CCTH -----------+-----------+-----------+----------- 21st | 21ST | 20th | 20TH
Dołącz „Century”
Wartość wieku i jej wskaźnik porządkowy można teraz w razie potrzeby połączyć z ciągiem „Century”.
SELECT
concat(to_char(date '2001-03-20', 'CCth'), ' Century!');
Wynik:
21st Century!