PostgreSQL: Czas życia krotki
Styczeń 14th, 2009
Brak komentarzy
Jak sprawdzić ile godzin minęło od utworzenia rekordu (lub po prostu obliczyć odstęp czasu od dowolnego momentu)?
SELECT extract (epoch from (now() - created_at))/3600 AS lifetime FROM …
Zakładając oczywiście, że w kolumnie created_at trzymamy dokładny czas utworzenia rekordu. Funkcja extract może operować na timestampach (znacznikach czasu) i interwałach (wynik działania now() - created_at jest właśnie interwałem). Powyższe zapytanie oblicza godziny. Poza tym możemy „extractować” wiele innych wartości, takich jak:
centurydaydecadedow(dzień tygodnia)epochhourisodowisoyearmicrosecondsmillenniummillisecondsminutemonthquartersecondtimezonetimezone_hourtimezone_minuteweekyear
Szczegóły w dokumentacji.