sql >> Databáze >  >> RDS >> PostgreSQL

Postregsql Datum rozdíl na základě sekund

Za prvé, data musí být hodnotami timestamp typ (takže připojte ::timestamp pokud je pouze specifikujete jako řetězcové literály).

Pokud odečtete dvě časová razítka, výsledkem je interval typ, který popisuje dobu trvání (v hodinách, minutách, sekundách atd.) Můžete použít extract(epoch from interval_value) pro převod intervalu na absolutní počet sekund.

Takže, když to dáme dohromady:

select extract(epoch from ('2011-12-30 09:55:56'::timestamp - '2011-12-30 08:54:55'::timestamp));

Pamatujte, že ::timestamp je potřeba pouze k převodu řetězcového literálu na časové razítko:nepotřebujete ho, pokud například používáte hodnotu sloupce časového razítka.




  1. Facebook Registration Connect

  2. Zalomení řádku SQL nefunguje

  3. Více kurzorů ve vnořených smyčkách v MySQL

  4. Jak mohu zadat heslo pro 'psql' neinteraktivně?