文章详情页
MySQL 联合查询并更新到另一个表,求教
问题描述
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. laravel excel求教2. javascript - 百度搜索网站,如何让搜索结果显示一张图片加上一段描述,如图;求教3. 新手大叔又来求教了4. python打包代码上传PYPI出现错误500,虚心求教5. javascript - layer.js 弹出层中点击确认判断验证 文本是否为空 !然后在嵌套一个弹出层进行提示,请问这样可以现实吗? 求教!6. mysql - 求教数据库表设计7. 新人求教MySQL关于判断后拼接条件进行查询的sql语句8. python - 用subprocess terminate没法结束进程 求教9. 萌新的一些想法和求教10. 文本处理 - 求教使用python库提取pdf的方法?
排行榜