当前位置:首页 > MySQL教程 > 正文内容

MySql经由过程查询效果集更新数据的要领引见【MySQL教程】,mysql

搜教程4年前 (2019-12-01)MySQL教程153
本篇文章给人人带来的内容是关于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 ;

本篇文章到这里就已悉数完毕了,更多其他精彩内容能够关注ki4网的MySQL教程视频栏目!

以上就是MySql经由过程查询效果集更新数据的要领引见的细致内容,更多请关注ki4网别的相干文章!

扫描二维码推送至手机访问。

版权声明:本文由搜教程网发布,如需转载请注明出处。

本文链接:https://www.sojiaocheng.cn/15824.html

标签: mysql
分享给朋友:

“MySql经由过程查询效果集更新数据的要领引见【MySQL教程】,mysql” 的相关文章

MySQL适配器之PyMySQL的细致引见【MySQL教程】,PyMySQL,MySQL,适配器

这篇文章主要为人人细致引见了MySQL适配器PyMySQL的相干材料,具有肯定的参考价值,感兴趣的小伙伴们能够参考一下 本文我们为人人引见 Python3 运用 PyMySQL 衔接数据库,并完成简朴的增编削查。 什么是 PyMySQL? PyMySQL 是在 Python3.x 版本顶用...

MySQL两种引擎的有什么区别【MySQL教程】,MySQL,区别,什么

Innodb引擎 Innodb引擎供应了对数据库ACID事件的支撑,而且完成了SQL规范的四种断绝级别。该引擎还供应了行级锁和外键束缚,它的设想目的是处置惩罚大容量数据库系统,它本身实在就是基于MySQL背景的完全数据库系统,MySQL运行时Innodb会在内存中竖立缓冲池,用于缓冲数据和索引。然...

运用mysqlfrm恢复frm表构造的要领【MySQL教程】,mysqlfrm,方法,结构

1、mysqlfrm装置 ----------------------------- 因为mysqlfrm是mysql-utilities东西一部分,那末我们装置mysql-utilities即可,下载好对应的源码包,举行编译装置。 shell> tar -xvzf mysql-ut...

复原数据库,数据库提醒正在复原中的处置惩罚要领【MySQL教程】,数据库,正在,提示

复原数据库,数据库提醒正在复原中的处置惩罚要领【MySQL教程】,数据库,正在,提示

复原数据库时,提醒复原胜利,但是数据库列表中该数据库显现正在复原中: 实行此敕令即可: RESTORE DATABASE EnterPriseBuilding WITH RECOVERY 1. 至少有一个误删除之前的数据库完全备份。 2. 数据库的恢复形式(Recovery mo...

Oracle和MySQL的高可用计划对照剖析【MySQL教程】,Oracle,MySQL,对比

Oracle和MySQL的高可用计划对照剖析【MySQL教程】,Oracle,MySQL,对比

关于Oracle和MySQL的高可用计划,实在一向想要总结了,就会分为几个系列来简朴说说。经由过程如许的对照,会对两种数据库架构设想上的细节差别有一个基础的熟悉。Oracle有一套很成熟的解决计划。用我在OOW上的ppt来看,是MAA的计划,本年是这个计划的16周年了。本文重要引见了Oracle和M...

mysql分页机能探究【MySQL教程】,mysql,探索,分页

mysql分页机能探究【MySQL教程】,mysql,探索,分页

分页在我们的编程中经常会用到,本文率领人人一同讨论mysql分页机能,希望能协助到人人。 罕见的几种分页体式格局: 1.扶梯体式格局 扶梯体式格局在导航上一般只供应上一页/下一页这两种情势,部份产物以至不供应上一页功用,只供应一种“更多/more”的体式格局,也有下拉自动加载更多的体式...