MySql如何通过查询结果集更新数据
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章将为大家详细讲解有关MySql如何通过查询结果集更新数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。表结构 现在有用户表和用户实名认证表,user_i
千家信息网最后更新 2026年11月01日MySql如何通过查询结果集更新数据
这篇文章将为大家详细讲解有关MySql如何通过查询结果集更新数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
表结构
现在有用户表和用户实名认证表,user_info,user_card。 user_info中的字段有user_id,user_name 。 user_card中的字段有user_id,user_card,user_name 。 其中user_name为用户实名认证的信息,user_info中做了字段冗余。
问题
用户表user_info中的user_name和user_card中的user_name不同步。 user_card中有值,user_info中没有值。 需要将user_card中的user_name同步到user_info中去。
解决方法
1.通过代码查询出user_info中 user_name 为空的数据 ,然后通过user_id查询出用户实名认证的数据进行同步 。
select user_id from user_info where user_name = '' ; select * from user_card where user_id in (上面的结果集) ; 通过代码更新数据
2.联表查询后更新数据
SELECT c.user_id , c.user_name FROM user_info AS u LEFT JOIN user_card AS c ON u.user_id = c.user_id WHERE u.user_name = ''; 通过代码更新数据
3.通过MySql内联更新数据
先写出更新语句 UPDATE `user_info` as u SET u.user_name = '结果集' ; 再获取条件结果集 SELECT c.user_id , c.user_name FROM user_info AS u LEFT JOIN user_card AS c ON u.user_id = c.user_id WHERE u.user_name = ''; 最后内联更新 UPDATE `user_info` as u INNER JOIN ( SELECT c.user_id , c.user_name FROM user_info AS u LEFT JOIN user_card AS c ON u.user_id = c.user_id WHERE u.user_name = ''; ) as r ON u.user_id = r.user_id SET u.user_name = r.user_name ;
关于MySql如何通过查询结果集更新数据就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
数据
更新
结果
查询
用户
代码
字段
实名
同步
认证
更多
篇文章
用户表
不错
实用
信息
内容
冗余
文章
方法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
瑰夏咖啡
互联网黑科技
互联网的科技
美国互联网科技巨头监管
深圳互联网络科技有限公司
深圳天众互联网科技公司
万达互联网科技
互联网科技美容
互联网养老 桔豆科技
金融科技和互联网金融
宁夏科技产业互联网案例
重庆互联网医院沙龙医盟信息科技
中国航天科技大学国际工业互联网
阿里互联网科技企业
工业互联网科技成果转化
扫呗互联网科技有限公司
全球科技与互联网公司市值变化
吉林省码上互联网科技电话
艺电能源互联网科技有限公司招聘
深圳互联网科技园地址
互联网高科技
中智农互联网科技
互联网巨头反垄断金融科技
礼当家互联网科技
苏州互联网科技贷款公司
中国的互联网科技企业的崛起
阿里互联网科技公司
互联网金融科技名词解释
吉林省码上互联网科技电话
北京军民互联网科技公司