场景:

有如下两个表

TableA

ID ROW1 ROW2 ROW3 ROW4
1 2 3 4 5

TableB

ID RowA_ID ROWA_ROW4
1 2

最开始的时候表B只有ID、RowA_ID两个字段,由于某些便捷性原因等,现在要增加一个字段“ROWA_ROW4”,现在就要给以前的记录补充对应的ROWA_ROW4数据;

分析:

我最开始想到的是写一段java代码,循环从TableA取出数据存进TableB;

后来赖哥给出一种简单的sql解决方式,如下。

SQL代码

-- 设置不自动提交

SET autotatbt = 0;

-- 更新数据

UPDATE TableB tb 

       SET tb.ROWA_ROW4= (

SELECT ROW4 FROM TableA ta WHERE ta.ID= tb.RowA_ID);

-- 查询是否达到效果

SELECT * from TableA ta ,TableB tb where ta.ID= tb.RowA_ID;

注意:

此方法只适用于补充同为横表的数据,无法将横表的数据插入到竖表中;