Sql

Postgresql select insert into: sql — postgresql: INSERT INTO … (SELECT * …)

postgresql — Postgres INSERT INTO с SELECT

спросил

Изменено 27 дней назад

Просмотрено 29 тысяч раз

Я пытаюсь написать SQL для вставки записей в таблицу PG.

Это логика:

  • Для каждой записи в таблице costprojects, которая имеет coststatus_id=1
  • вставить новую запись в таблицу смет
    • costcat_id = 30, сумма = 0, costproject_id = costproject.id (из записи costprojects), обслуживание = «ЛОЖЬ», position = 22

Это код SQL, который я пробовал:

 ВСТАВИТЬ В смету затрат (costcat_id, сумма, costproject_id, обслуживание, позиция) ЗНАЧЕНИЯ (30, 0, costproject.id, false, 22)
(ВЫБЕРИТЕ идентификатор ИЗ costprojects, ГДЕ coststatus_id=1)
 

Я получаю ОШИБКУ: синтаксическая ошибка в или около «(»

  • postgresql

4

Должно быть что-то вроде этого:

 ВСТАВИТЬ В сметы затрат (costcat_id, сумма, costproject_id, обслуживание, позиция)
ВЫБЕРИТЕ 30, 0, id, false, 22 ОТ costprojects, ГДЕ coststatus_id=1;
 

См.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *