date
i time
typy
Jeśli Twój Day
jest typu date
i Twój Time
jest typu time
, istnieje bardzo proste rozwiązanie:
SELECT EXTRACT(EPOCH FROM (day + time));
Możesz po prostu dodać date
i time
aby uzyskać timestamp [without time zone]
(co jest interpretowane zgodnie z ustawieniem strefy czasowej sesji).
A ściśle mówiąc, wyodrębnienie epoki nie jest związane z twoim pytaniem per se.date
+ time
w wyniku timestamp
, to wszystko.
Typy ciągów
Jeśli mówisz o literałach ciągów lub text
/ varchar
kolumny, użyj:
SELECT EXTRACT(EPOCH FROM ('2013-07-18' || ' ' || '21:52:12')::timestamp);
lub
SELECT EXTRACT(EPOCH FROM cast('2013-07-18' ||' '|| '21:52:12' AS timestamp));
Twój formularz nie praca
SELECT EXTRACT(EPOCH FROM TIMESTAMP ('2013-07-18' || ' ' || '21:52:12'));
To zadziała:
SELECT EXTRACT(EPOCH FROM "timestamp" ('2013-07-18' || ' ' || '21:52:12'));
Cytuję podręcznik dotyczący rzutowania typów :
Pogrubiony nacisk na moje.
Istota tego:raczej użyj jednego z dwóch pierwszych wariantów składni.