MySQL 从一张表update字段到另外一张表中

 更新时间:2015年09月01日 11:46:48   投稿:hebedich  
使用MySQL 4.0版或更高更新您可以通过加入两个或多个表一起一表;通过加入两个表连同您可以更新一个表的记录在相关领域的总部设在另一个表。

先来几个简单的示例

Solution 1:  1列

update student s, city c
  set s.city_name = c.name
 where s.city_code = c.code;

Solution 2:  多个列

update a, b 

set a.title=b.title, a.name=b.name
where a.id=b.id

Solution 3: 子查询

update student s set city_name = (select name from city where code = s.city_code);

我们再来看几个负责写的

例如: 把表 tk_zyt_scenery_order的 字段更新到 t_advs_order中去, 一般可能会这样写:

UPDATE t_advs_order SET
 
 attribute1=(SELECT o.order_state FROM tk_zyt_scenery_order o WHERE o.order_id=`on`),
 
 attribute2=(SELECT o.order_state FROM tk_zyt_scenery_order o WHERE o.order_id=`on`)
 
 WHERE EXISTS (SELECT o.order_state FROM tk_zyt_scenery_order o WHERE o.order_id=`on`);

这样效率比较低下, 优化写法:

UPDATE t_advs_order a INNER JOIN tk_zyt_scenery_order s ON s.order_id=a.`on` SET
 
 a.attribute1=s.order_id,
 
 a.attribute2=s.order_id;

相关文章

  • 一文搞懂MySQL索引页结构

    一文搞懂MySQL索引页结构

    本文主要介绍了MySQL索引页结构,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • 详解MySQL数据库优化的八种方式(经典必看)

    详解MySQL数据库优化的八种方式(经典必看)

    关于数据库优化,网上有不少资料和方法,但是不少质量参差不齐,有些总结的不够到位,内容冗杂。今天给大家分享一篇文章关于mysql数据库优化的八种方式,非常经典,需要的的朋友参考下
    2017-03-03
  • 使用Canal实现MySQL主从同步的流程步骤

    使用Canal实现MySQL主从同步的流程步骤

    这篇文章主要介绍了如何使用Canal实现MySQL主从同步效果,文中通过代码示例和图文结合的方式给大家讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-04-04
  • MYSQL使用inner join 进行 查询/删除/修改示例

    MYSQL使用inner join 进行 查询/删除/修改示例

    本文为大家介绍下使用inner join 进行查询/删除/修改,具体实现如下,学习mysql的朋也可以学习下,希望对大家有所帮助
    2013-07-07
  • MySQL巧用sum、case和when优化统计查询

    MySQL巧用sum、case和when优化统计查询

    这篇文章主要给大家介绍了关于MySQL巧用sum、case和when优化统计查询的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • MySQL数据库常用命令小结

    MySQL数据库常用命令小结

    这篇文章主要介绍了MySQL数据库命令,主要包括对数据库常用命令及数据库中对表的命令,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • CentOS 7下使用RPM安装mysql5.7.13

    CentOS 7下使用RPM安装mysql5.7.13

    这篇文章主要为大家详细介绍了CentOS 7下使用RPM安装mysql5.7.13的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • win11设置mysql开机自启的实现方法

    win11设置mysql开机自启的实现方法

    本文主要介绍了win11设置mysql开机自启的实现方法,要通过命令行方式设置,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • SUSE Linux下源码编译方式安装MySQL 5.6过程分享

    SUSE Linux下源码编译方式安装MySQL 5.6过程分享

    这篇文章主要介绍了SUSE Linux下源码编译方式安装MySQL 5.6过程分享,本文使用SUSE Linux Enterprise Server 10 SP3 (x86_64)系统,需要的朋友可以参考下
    2014-09-09
  • Windows下MySQL5.6查找my.ini配置文件的方法

    Windows下MySQL5.6查找my.ini配置文件的方法

    今天小编就为大家分享一篇Windows下MySQL5.6查找my.ini配置文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06

最新评论