PostgreSQL: как добавить данные в колонку, которой нет во временной таблице WITH

Я сейчас затачиваю нужный мне запрос под RedShift.

Сейчас у меня есть уже работающий, который создает временную таблицу с помощью WITH и вставляет из нее данные в ту таблицу, которая мне нужна дальше. Запрос такой:

INSERT INTO target.table (
            collect_project_id,
            project_number,
            project_name,
            connect_project_id,
            project_desc,
            project_type,
            project_status,
            project_path,
            language_code,
            country_code,
            timezone,
            date_created,
            date_updated
            )
WITH temp AS (SELECT id, number, name, connect_project_id, description, type, status, path, language, country, timezone, created, modified
FROM source.table)
SELECT id, number, name, connect_project_id, description, type, status, path, language, country, timezone, created, modified
FROM temp;

Но мне нужно, чтобы target.table в конце еще была добавлена одна колонка edw_date_created, которой нет в temp (source.table) и в которую данные добавятся через NOW() (то есть в эту колонку будет добавлена дата добавления записи). Не могу понять как это сделать. Буду благодарен за подсказку.


Ответы (1 шт):

Автор решения: Akina
INSERT INTO target.table (
            collect_project_id,
            project_number,
            project_name,
            connect_project_id,
            project_desc,
            project_type,
            project_status,
            project_path,
            language_code,
            country_code,
            timezone,
            date_created,
            date_updated

-- добавить поле
, edw_date_created

            )
WITH temp AS (SELECT id, number, name, connect_project_id, description, type, status, path, language, country, timezone, created, modified
FROM source.table)
SELECT id, number, name, connect_project_id, description, type, status, path, language, country, timezone, created, modified

-- и значение для него
, NOW()

FROM temp;


→ Ссылка