我有一个表AAA:
col val
1 null
1101 null
11011 1
11012 2
11013 3
1102 null
110201 4
110202 5
110203 6
1103 null
11031 7
11032 8
11033 9
想把该表用一个sql更新成
我有一个表AAA:
col val
1 45
1101 6
11011 1
11012 2
11013 3
1102 15
110201 4
110202 5
110203 6
1103 24
11031 7
11032 8
11033 9
即父val的值更新为子val的值之和(子col长度不相同)
col val
1 null
1101 null
11011 1
11012 2
11013 3
1102 null
110201 4
110202 5
110203 6
1103 null
11031 7
11032 8
11033 9
想把该表用一个sql更新成
我有一个表AAA:
col val
1 45
1101 6
11011 1
11012 2
11013 3
1102 15
110201 4
110202 5
110203 6
1103 24
11031 7
11032 8
11033 9
即父val的值更新为子val的值之和(子col长度不相同)
UPDATE AAA T1
SET VAL = (SELECT SUM(VAL) FROM AAA T2 WHERE T2.COL LIKE T1.COL || '%')
WHERE T1.VAL IS NULL;
UPDATE AAA T1
SET VAL = (SELECT SUM(VAL) FROM AAA T2 WHERE INSTR(T2.COL,T1.COL)=1)
WHERE T1.VAL IS NULL;