背景:
之前通过导入的方式在T1表中插入了数据(大于3000条),但后来发现有一列的值信息不全(有的是空着的),于是想将信息补全。
先建立一张临时表T2,通过oracle的导入将新的数据迁入,然后
update T1 set T1.列A= (select T2.列A from T2 where T1.列B = T2.列B and rownum<=1) where exists(select 1 from T2 where T1.列B = T2.列B);
完成批量更新。
PS:对该sql的分析
首先明确要更新的列:表T1的列A
然后明确值从哪来:表T2的列A
如何将值对应起来:通过唯一标识列B来确定每条数据