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.