PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Differenza timestamp in ore per PostgreSQL

Le prime cose che saltano fuori

EXTRACT(EPOCH FROM current_timestamp-somedate)/3600

Potrebbe non essere carino, ma sblocca la strada. Potrebbe essere più carino se fosse definita la divisione di intervallo per intervallo.

Modifica :se lo vuoi maggiore di zero usa abs o great(...,0). Qualunque sia la tua intenzione.

Modifica++ :il motivo per cui non ho usato age è quella age con un solo argomento, per citare la documentazione:Sottrai da data_corrente (a mezzanotte) . Ciò significa che non ottieni un'"età" precisa a meno che non corri a mezzanotte. In questo momento è quasi l'una di notte qui:

select age(current_timestamp);
       age        
------------------
 -00:52:40.826309
(1 row)