まず、日付はtimestamp
の値である必要があります タイプ(したがって、::timestamp
を追加します 文字列リテラルとして指定しているだけの場合)。
2つのタイムスタンプを引くと、結果はinterval
になります。 タイプ。期間(時間、分、秒など)を記述します。extract(epoch from interval_value)
を使用できます。 間隔を絶対秒数に変換します。
だから、それをすべてまとめる:
select extract(epoch from ('2011-12-30 09:55:56'::timestamp - '2011-12-30 08:54:55'::timestamp));
::timestamp
であることを忘れないでください 文字列リテラルをタイムスタンプに変換するためにのみ必要です。たとえば、タイムスタンプ列の値を使用している場合は必要ありません。