Verwenden Sie
select (date '2013-01-01' + interval '53 days')::date
oder
select cast(date '2013-01-01' + interval '53 days' as date)
PostgreSQLs Standard-SQL-Funktion "extract()" wird arbeiten mit Zeitstempeln, aber a) "date" ist kein gültiges Argument für extract(), und b) es gibt Unterfelder zurück, keine Sammlung von Unterfeldern. Konzeptionell besteht ein Datum aus einer Sammlung von drei Unterfeldern:Jahr, Monat und Tag.
select extract(year from current_timestamp),
extract(month from current_timestamp),
extract(day from current_timestamp),
-- Concatenate and cast to type "date".
(extract(year from current_timestamp) || '-' ||
extract(month from current_timestamp) || '-' ||
extract(day from current_timestamp))::date