尝试以下操作:
WITH CTE
AS
(
SELECT ID_Grupe,
sum(ukupna_bilansna_i_vanbilansna_aktiva) AS Total
FROM rm_tb_portfolio as a
INNER JOIN B2_INPT_CR_GRP_SNPST as b ON a.mbr = b.GRP_ID
GROUP BY ID_Grupe
)
UPDATE c
SET c.IDV_REL_P_ESR_AMT = c2.Total
FROM B2_INPT_CR_IP_SNPST as c1
INNER JOIN CTE AS c2 ON c1.ID_Grupe = c2.ID_Grupe;
如果要执行插入,可以使用相同的方法执行:
WITH CTE
AS
(
....
)
INSERT INTO B2_INPT_CR_IP_SNPST(...)
SELECT ... FROM CTE;
但是,不能同时使用两者
INSERT
和
UPDATE
在相同的sql语句中。但是,您可以使用
MERGE
在这种情况下,更新现有行或插入新值。