Hal pertama yang muncul
EXTRACT(EPOCH FROM current_timestamp-somedate)/3600
Mungkin tidak cantik, tetapi membuka blokir jalan. Bisa lebih cantik jika pembagian interval dengan interval didefinisikan.
Sunting :jika Anda ingin lebih besar dari nol, gunakan abs atau terbesar(...,0). Mana yang sesuai dengan niat Anda.
Edit++ :alasan kenapa saya tidak menggunakan age
apakah itu age
dengan satu argumen, mengutip dokumentasi:Kurangi dari tanggal_saat ini (tengah malam) . Berarti Anda tidak mendapatkan "usia" yang akurat kecuali berjalan di tengah malam. Sekarang sudah hampir jam 1 pagi di sini:
select age(current_timestamp);
age
------------------
-00:52:40.826309
(1 row)