zoukankan      html  css  js  c++  java
  • 数据库MySQL中关于“多表关联更新”的那些事

      在常见的sql中,我们经常在查询中进行多表关联查询,用的比较熟练。今天在开发中遇到一个实际业务场景是多表关联更新,一时不知所措。本着多学习的态度,没有直接写java代码去实现,终于把多表关联更新的sql弄清楚了。下面将实际业务场景进行简化,分别有person表和information表,最终目的是将 information表中的年龄更新到person表中的每个人的年龄。分别写了几个sql demo来把多表更新的知识理解透彻。

      首先,在更新前,person表和information表分别如下:

    information表

     person表

    1. CASE1

      sql :update information,person SET information.phone='13812345678',person.age = '18' WHERE information.name = person.name

      更新后的information表和person表分别如下

             

      当然,还有一种方式可以实现上面的功能

      sql:UPDATE information JOIN person on information.name = person.name SET information.phone='13811111111',person.age = '18'

      或者是

      sql:UPDATE information LEFT JOIN person on information.name = person.name SET information.phone='13811111111',person.age = '18'

    2.  CASE2  

      sql:UPDATE information RIGHT JOIN person on information.name = person.name SET information.phone='13922222222',person.age = '19'

      更新后的information表和person表分别如下

          

     3.  CASE3

      sql:  UPDATE information JOIN person on information.name = person.name SET information.age=person.age

         

       通过上述几个例子,相信关于多条关联更新的分析应该是比较透彻了。多学习,多成长。

  • 相关阅读:
    前端了解即可:postman(接口测试)的使用
    ES6——TDZ(暂时性死区)
    Centos自动安装openssh及openssl脚本并隐藏版本号
    ELK学习链接
    Centos7 中使用搭建devpi并且使用Supervisor守护进程
    ansible系列
    iperf3网络测试工具
    Centos6.9下PXE安装centos 7
    CentOS 6.9下PXE+Kickstart无人值守安装操作系统
    django学习篇
  • 原文地址:https://www.cnblogs.com/Demrystv/p/11762184.html
Copyright © 2011-2022 走看看