UPDATE TEST T1
SET T1.VAL = (SELECT DECODE(SUM(VAL), NULL, T1.VAL, SUM(VAL))
FROM TEST T2
WHERE T2.ID <> T1.ID
AND CONNECT_BY_ISLEAF = 1
START WITH T2.ID = T1.ID
CONNECT BY PRIOR T2.ID = T2.PARENTID);
把test换成你的表名即可。。
SET T1.VAL = (SELECT DECODE(SUM(VAL), NULL, T1.VAL, SUM(VAL))
FROM TEST T2
WHERE T2.ID <> T1.ID
AND CONNECT_BY_ISLEAF = 1
START WITH T2.ID = T1.ID
CONNECT BY PRIOR T2.ID = T2.PARENTID);
把test换成你的表名即可。。
SET T1.VAL = (SELECT DECODE(SUM(VAL), NULL, T1.VAL, SUM(VAL))
FROM TEST T2
WHERE T2.ID <> T1.ID
AND CONNECT_BY_ISLEAF = 1
START WITH T2.ID = T1.ID
CONNECT BY PRIOR T2.ID = T2.PARENTID);
把test换成你的表名即可。。
顶一个............