Zapytanie:
SELECT age(data_ur) as wiek FROM user WHERE id=1;
(gdzie data_ur jest typu date) może dać wynik:
wiek
-------------------------
6 years 11 mons 21 days
Jeśli chcielibyśmy się dowiedzieć ile użytkownik miał lat na przykład 21 kwietnia 2009 roku wystarczy napisać:
SELECT age(timestamp '2009-04-21', data_ur) as wiek FROM user WHERE id=1;
co da wynik w postaci:
wiek
------------------------
5 years 8 mons 20 days
Za pomocą funkcji date_part() można w prosty sposób "wyciągnąć" z wyniku np. jedynie ilość lat (bez informacji o miesiącach i dniach):
SELECT date_part('year', age(timestamp '2009-04-21', data_ur)) as wiek FROM user WHERE id=1
wynik:
wiek
------
5
Brak komentarzy:
Prześlij komentarz