date
dan time
jenis
Jika Day
. Anda bertipe date
dan Time
bertipe time
, ada solusi yang sangat sederhana:
SELECT EXTRACT(EPOCH FROM (day + time));
Anda cukup menambahkan date
dan time
untuk mendapatkan timestamp [without time zone]
(yang ditafsirkan sesuai dengan pengaturan zona waktu sesi Anda).
Dan, sebenarnya, mengekstrak epoch itu sendiri tidak terkait dengan pertanyaan Anda.date
+ time
menghasilkan timestamp
, itu dia.
Jenis string
Jika Anda berbicara tentang string literal atau text
/ varchar
kolom, gunakan:
SELECT EXTRACT(EPOCH FROM ('2013-07-18' || ' ' || '21:52:12')::timestamp);
atau
SELECT EXTRACT(EPOCH FROM cast('2013-07-18' ||' '|| '21:52:12' AS timestamp));
Formulir Anda tidak kerja
SELECT EXTRACT(EPOCH FROM TIMESTAMP ('2013-07-18' || ' ' || '21:52:12'));
Ini akan berhasil:
SELECT EXTRACT(EPOCH FROM "timestamp" ('2013-07-18' || ' ' || '21:52:12'));
Saya mengutip manual tentang tipe gips :
Penekanan saya yang berani.
Intinya:lebih baik gunakan salah satu dari dua varian sintaks pertama.