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

         

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

  • 相关阅读:
    未解决的
    nodejs 7 和 8 的比较
    openresty Nginx
    Vim快捷键分类
    wireshark 包过滤
    RSA 公私钥 互换问题
    vim命令
    Windows 小端存储
    python 字符转换
    ssl证书验证
  • 原文地址:https://www.cnblogs.com/Demrystv/p/11762184.html
Copyright © 2011-2022 走看看