date en time soorten
Als uw Day is van het type date
en je Time is van het type time
, is er een heel eenvoudige oplossing:
SELECT EXTRACT(EPOCH FROM (day + time));
Je kunt gewoon date toevoegen en time om een timestamp [without time zone] . te krijgen (die wordt geïnterpreteerd volgens de tijdzone-instelling van uw sessie).
En strikt genomen is het extraheren van het tijdperk niet per se gerelateerd aan uw vraag.date + time resulteren in een timestamp , dat is het.
Tekenreekstypen
Als je het hebt over letterlijke tekenreeksen of text / varchar kolommen, gebruik:
SELECT EXTRACT(EPOCH FROM ('2013-07-18' || ' ' || '21:52:12')::timestamp);
of
SELECT EXTRACT(EPOCH FROM cast('2013-07-18' ||' '|| '21:52:12' AS timestamp));
Uw formulier doet niet werk
SELECT EXTRACT(EPOCH FROM TIMESTAMP ('2013-07-18' || ' ' || '21:52:12')); Dit zou werken:
SELECT EXTRACT(EPOCH FROM "timestamp" ('2013-07-18' || ' ' || '21:52:12'));
Ik citeer de handleiding over typecasts :
Vetgedrukte nadruk van mij.
De essentie:gebruik liever een van de eerste twee syntaxisvarianten.