Я полный SQL noob. Я пытаюсь создать новую запись в таблице для каждого из неполного списка из другой таблицы. Я не могу получить синтаксис цикла правильно. В принципе, вот псевдокод для того, что я пытаюсь сделать:Петли и вставки PostgreSQL PGADMIN III
FOR EACH item FROM "SCHEMA1".table1.field1 WHERE table1.field2 = 500 OR table1.field2 = 900 LOOP
USE "SCHEMA1".table2
INSERT INTO "SCHEMA1".table2 (column1, column2, column3)
VALUES (row_number(), table1.field1, "done")
END LOOP;
table1 имеет около 4300 записей, и я хочу одно поле от около 90 конкретных записей, скопированных в другую существующую таблицу в качестве новых записей (с дополнительными данными). Обе таблицы существуют в одной схеме, но на серверах есть дюжина или около того с дублирующимися таблицами и полями.
Спасибо, что нашли время, чтобы обучить старый нуб.
Спасибо @kordirko, я попробую, когда у меня появится шанс. Я застрял со старой версией postgres и сложной базой данных, доступной только из очень искалеченной GUI-программы. Создание этих 90, в основном идентичных записей займет буквально несколько дней. Я надеялся использовать PGADMIN, чтобы обрезать это до нескольких часов или минут, так как у меня есть другие, более простые задачи. Row_number() использовался, потому что столбец идентификатора не автоинкремент, и мне нужны уникальные идентификаторы. Спасибо, что нашли время. –