文章详情页
MySQL 联合查询并更新到另一个表,求教
浏览:157日期:2022-06-14 17:12:44
问题描述
A表里有uid,name B表有uid,nick
我想把A表和B表的name,nick 都更新到C表,但是C表可能有对应uid,也可能没有,3个表的uid都设置了主键。求教该怎么写SQL语句。
假如A表和B表的uid不是全对应的,A表有的uid B表不一定有,但是我想让C表都更新,只要A或B有一个有的,C表的uid就添加它。该怎么写。非常感谢!
我这样写的,会提示主键冲突。
[SQL]insert into accounts(uid,balance) (select uid,balance from wp_accountinfo);[Err] 1062 - Duplicate entry ’325’ for key ’PRIMARY’
问题解答
回答1:你这样写肯定会冲突的啊,这样的话你就插入了重复的主键了,最简单的就是分多个sql操作就可以了。比如你可以把A和C表重复的uid更新掉。然后再把C中不存在A的添加到C中,以此类推就可以了
回答2:insert into account(uid,balance) (select uid, balance from wp_accountinfo) on duplicate key update balance=column(blance);
相关文章:
1. 求教一个mysql建表分组索引问题2. node.js - 我是一个做前端的,求教如何学习vue,node等js引擎?3. css3 - 求教CSS图标库的写法,也就是先做雪碧图,然后写一个css表,用的时候直接用class就可以了4. css3 - 求教个问题,关于响应式布局,跟ipad有关,媒体查询失效?5. python - 用subprocess terminate没法结束进程 求教6. java - mongodb web可视化客户端求教!7. ionic build android 报错,求教!8. javascript - 用on方法,绑定ui,下面的li 事件,ui,li是由ajax生成的,新手求教9. tp 6.0 数据查询,求教!10. angular.js - 求教 route ng-view 单页切换时如何缓存用户输入信息
排行榜
![$fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题](http://www.haobala.com/attached/image/news/202205/093622cb60.png)