date
и time
типове
Ако вашият Day
е от тип date
и вашето Time
е от тип time
, има много просто решение:
SELECT EXTRACT(EPOCH FROM (day + time));
Можете просто да добавите date
и time
за да получите timestamp [without time zone]
(което се интерпретира според настройката на часовата зона на вашата сесия).
И, строго погледнато, извличането на епохата не е свързано с вашия въпрос само по себе си.date
+ time
доведе до timestamp
, това е.
Типове низове
Ако говорите за низови литерали или text
/ varchar
колони, използвайте:
SELECT EXTRACT(EPOCH FROM ('2013-07-18' || ' ' || '21:52:12')::timestamp);
или
SELECT EXTRACT(EPOCH FROM cast('2013-07-18' ||' '|| '21:52:12' AS timestamp));
Вашият формулярне работа
SELECT EXTRACT(EPOCH FROM TIMESTAMP ('2013-07-18' || ' ' || '21:52:12'));
Това ще работи:
SELECT EXTRACT(EPOCH FROM "timestamp" ('2013-07-18' || ' ' || '21:52:12'));
Цитирам ръководството за преобразуване на типове :
Удебелен акцент е мой.
Същността на това:по-скоро използвайте един от първите два варианта на синтаксис.