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

Získejte časové razítko ze zřetězení sloupců dne a času

date a time typy

Pokud váš Day je typu date a váš Time je typu time , existuje velmi jednoduché řešení:

SELECT EXTRACT(EPOCH FROM (day + time));

Stačí přidat date a time získat timestamp [without time zone] (což je interpretováno podle nastavení časového pásma vaší relace).

A přísně vzato, extrahování epochy nesouvisí s vaší otázkou jako takovou.
date + time výsledkem je timestamp , to je ono.

Typy řetězců

Pokud mluvíte o řetězcových literálech nebo text / varchar sloupce, použijte:

SELECT EXTRACT(EPOCH FROM ('2013-07-18' || ' ' || '21:52:12')::timestamp);

nebo

SELECT EXTRACT(EPOCH FROM cast('2013-07-18' ||' '|| '21:52:12' AS timestamp));

Váš formulář není práce

SELECT EXTRACT(EPOCH FROM TIMESTAMP ('2013-07-18' || ' ' || '21:52:12'));

Toto by fungovalo:

SELECT EXTRACT(EPOCH FROM "timestamp" ('2013-07-18' || ' ' || '21:52:12'));

Cituji manuál o přehazování typu :

Tučné zdůraznění moje.
Podstata:raději použijte jednu z prvních dvou variant syntaxe.



  1. Zobrazit datum další události

  2. Jak získáte více sad výsledků z jednoho CallableStatement?

  3. Potřebuji nakonfigurovat django a mysql v pycharm IDE

  4. Jak mohu provést tento dotaz v oracle