Цикл SQL While - обновите значение из заказа в подзаказ, чтобы иметь одинаковую сумму. но только для этого конкретного заказа, затем перейти к следующему - PullRequest
0 голосов
/ 28 октября 2019

это обновляет значение от родительского идентификатора до childid с той же парентидой

теперь работает - обновлен вопрос, чтобы отразить рабочий пример

WITH CTE AS (
-- This is end of the recursion: Select items with no parent
        SELECT orderid, backorderedfromid,[orig. goods], [orig. vat], total
        FROM BemTotalSale
        WHERE backorderedfromid is null
    UNION ALL
-- This is the recursive part: It joins to CTE
        SELECT t.orderid, t.backorderedfromid, c.[orig. goods], c.[orig. vat], c.total
        FROM BemTotalSale t
        INNER JOIN CTE c ON t.backorderedfromid = c.orderid
    )
  UPDATE bts
SET bts.total = CTE.total,
bts.[orig. goods] = CTE.[orig. goods],
bts.[orig. vat] = CTE.[orig. vat]
FROM CTE
INNER JOIN BemTotalSale as bts ON bts.orderid = cte.orderid


...