Mysql多表关联更新方式

 更新时间:2022年12月12日 10:44:01   作者:程序螺丝钉  
这篇文章主要介绍了Mysql多表关联更新方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Mysql多表关联更新

日常的开发中一般都是写的单表update语句,很少写多表关联的update。

在MySQL中我们有几种方法可以做到多表关联更新:

在两张表之间做关联,可以更新关联的多张表

update  biao1,表2
set 表1.列名=表2.列名  --外键或关联字段
where
更新条件;--例如:表1.列名=表2.列名,或字段aa>1等等

通过 INNER JOIN,可以更新关联的多张表

update 表1
inner join 表2   on  表1.列名=表2.列名  --外表链接 ID
set  表1.列名=值;--更新的内容

通过 LEFT JOIN ,可以更新关联的多张表

update  表1
left join 表2  on  表1.列名=表2.列名  --外表链接ID
set  表1.列名=新值;

通过子查询,只更新一张表

update 表1
set 表1.列名=(select  字段  from  表2  where  表2.列名=表1.列名 );

Mysql多表关联update

日常的开发中一般都是写的单表update语句,很少写多表关联的update。

在MySQL中,update的多表连接更新和select的多表连接查询在使用的方法上存在一些小差异。

来看一个具体的例子。

update table1 t1
    inner join table2 t2
        on t1.id = t2.id
set t1.name=t2.name;

在上面的例子中,update关键字后跟的是一个多表关联的结果集,MySQL直接将这个多表关联的结果集看做一个单表,再在这个单表的基础上做常规的update操作。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Linux centos7环境下MySQL安装教程

    Linux centos7环境下MySQL安装教程

    这篇文章主要为大家详细介绍了Linux centos7环境下MySQL安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • Debian中完全卸载MySQL的方法

    Debian中完全卸载MySQL的方法

    这篇文章主要介绍了Debian中完全卸载MySQL的方法,同时介绍了清理方法,可以做到彻底卸载mysql,需要的朋友可以参考下
    2014-06-06
  • php mysql localhost,127.0.0.1和ip区别

    php mysql localhost,127.0.0.1和ip区别

    localhost与127.0.0.1的区别是什么?相信有人会说是本地ip,曾有人说,用127.0.0.1比localhost好,可以减少一次解析。看来这个入门问题还有人不清楚,其实这两者是有区别的
    2014-05-05
  • 浅析mysql union和union all

    浅析mysql union和union all

    union 是对数据进行并集操作,不包括重复行,同时进行默认排序而Union all 是对数据进行并集操作,包括重复行,不进行排序,下面给大家详细介绍mysql union和union all,感兴趣的朋友一起看看吧
    2017-10-10
  • MySQL长连接短连接面试精讲

    MySQL长连接短连接面试精讲

    这篇文章主要为大家介绍了MySQL长连接短连接面试精讲,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • mysql charset=utf8你真的弄明白意思了吗

    mysql charset=utf8你真的弄明白意思了吗

    这篇文章主要介绍了mysql charset=utf8你真的弄明白意思了吗?文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • 关于MySQL中的 like操作符详情

    关于MySQL中的 like操作符详情

    这篇文章主要介绍了MySQL之like操作符,当对未知或者说知道某一部分的值进行过滤时,可以使用like操作符;like操作符用于模糊匹配。下面我们一起进入文章看看文章是我详细内容
    2021-11-11
  • 解决mysql 组合AND和OR带来的问题

    解决mysql 组合AND和OR带来的问题

    这篇文章主要介绍了解决mysql 组合AND和OR带来的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Linux/UNIX和Window平台上安装Mysql

    Linux/UNIX和Window平台上安装Mysql

    这篇文章主要为大家详细介绍了Linux/UNIX和Window两个系统上采用命令安装Mysql的方法,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • MySQL索引概念及七种索引类型分享介绍

    MySQL索引概念及七种索引类型分享介绍

    这篇文章主要介绍了MySQL索引概念及七种索引类型分享介绍,索引是存储引擎用于快速找到记录的一种数据结构,这也是索引最基本的功能
    2022-08-08

最新评论