遇见一个问题,就是需要将mysqlB表的数据添加到A表(两个表的数据量在2g左右),如下图
表A
表B
更新后的表格
精通mysql的大佬帮帮忙,小弟刚刚使用mysql,不熟悉SQL语句,详细些,谢谢大牛们!
update 表A as a ,表B as b SET a.pass
= b.pass
WHERE a.id
= b.id
标签ID的是和pass一一对应的,需要根据id的数据插入pass,大佬们帮帮忙
update 表A as a set a.pass=(SELECT b.pass from 表B as b where b.id=a.id)
where EXISTS (SELECT 1 from 表B as b where b.id=a.id)
update tabA as a inner join tabB as b on a.id = b.id set a.pass = b.pass
1.在业务代码里面实现,当B表更新时,根据id去更新A中的数据
2.可以用触发器,具体参见:https://blog.csdn.net/HXNLYW/article/details/80650865,触发器是隐藏执行的,所以需要在业务代码处,加上相应的注解,让阅读代码的人知道背后做了什么。
select A.id, (isnull(A.pass,0)+isnull(B.pass,0)) as pass from A left join B on A.id=B.id
可以用两个表左连接,然后两列相加