首页 > 数据库技术 > 详细

数据库MySQL中关于“多表关联更新”的那些事

时间:2019-10-29 23:47:25      阅读:90      评论:0      收藏:0      [点我收藏+]

  在常见的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

  技术分享图片   技术分享图片

 

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

 

数据库MySQL中关于“多表关联更新”的那些事

原文:https://www.cnblogs.com/Demrystv/p/11762184.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!