Usar
select (date '2013-01-01' + interval '53 days')::date
o
select cast(date '2013-01-01' + interval '53 days' as date)
Función SQL estándar de PostgreSQL "extraer()" voluntad operar en marcas de tiempo, pero a) "fecha" no es un argumento válido para extraer (), y b) devuelve subcampos, no una colección de subcampos. Conceptualmente, una fecha consta de una colección de tres subcampos:año, mes y día.
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