新增数据列,更新数据列内容(直接更新):
SELECT * FROM TEMP;
ALTER TABLE TEMP ADD A NUMBER;
UPDATE TEMP T SET T.A=T.B*2;
COMMIT;
新增数据列,更新数据列内容(关联其他表更新):
目标:根据TEMP_2表中的A列的值,更新至TEMP_1表里新增的A列;
已知:TEMP_2表和TEMP_1表中有可关联的唯一主键:ID;
SELECT * FROM TEMP_1;
SELECT * FROM TEMP_2;ALTER TABLE TEMP_1 ADD A NUMBER;
UPDATE TEMP_1 T SET T.A=(SELECT L.A FROM TEMP_2 WHERE T.ID=L.ID);
COMMIT;
注意:如果TEMP_2表的ID不是唯一的,有重复数据的话,会在更新的时候报错,可以写成以下的形式:
ALTER TABLE TEMP_1 ADD A NUMBER;UPDATE TEMP_1 T
SET T.A=(SELECT L.A FROM (SELECT DISTINCT ID,A FROM TEMP_2)L WHERE T.ID=L.ID);COMMIT;
本文链接:https://my.lmcjl.com/post/3019.html
展开阅读全文
4 评论