Старайтесь избегать петли любой ценой.Обдумайте набор на основе обработки, что означает обработку всего набора строк в одной команде SQL.
Я не совсем уверен, что вы пытаетесь сделать, так как ваш вопрос немного расплывчатый.однако, вот два возможных способа справиться с тем, что вы пытаетесь сделать, используя мышление на основе множеств.
Вы можете выполнить JOIN в ОБНОВЛЕНИИ, по сути выбирая из родительской таблицы и ОБНОВЛЯЯ дочернюю таблицу для всех строкодиночная команда UPDATE.
UPDATE c
SET Col1=p.Col1
FROM ParentTable p
INNER JOIN ChildTable c On p.ParentID=c.ParentID
WHERE ...
Вы также можете вставлять на основе SELECT, поэтому вы можете создать одну строку из каждой строки, возвращаемой в SELECT, например:
INSERT INTO ChildTable
(Col1, Col2, Col3, Col4)
SELECT
p.ColA, p.ColB, 'constant value', p.ColC-p.ColD
FROM ParentTable p
WHERE...