数据库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
通过上述几个例子,相信关于多条关联更新的分析应该是比较透彻了。多学习,多成长。
最新文章
- “不要抄代码!自己的代码也不要抄!”
- BZOJ3421 : Poi2013 Walk
- PDA通过SocketTcp+Json和SuperSocket通信方式
- MVC 提交表单
- SQL中CONVERT()函数用法详解
- [DOM]有一种节点叫做文本节点
- html调用applet
- PHP 开发API接口 注册,登录,查询用户资料
- transition的唧唧歪歪
- BZOJ 2434: [Noi2011]阿狸的打字机( AC自动机 + DFS序 + 树状数组 )
- 经典的C++库【转帖】
- C# To C++ Converter Cracked ( 破解版 )
- AngularJS 模板
- 使用 Flask-Docs 自动生成 Api 文档
- [转]Cloudera Manager和CDH5.8离线安装
- iOS----KVC和KVO 详解
- 系统不支持WP开发
- Revit api 创建楼梯图元
- NSLog格式化输出
- mysql中的直方图采样逻辑