MySQL 多表 update 有几种不同的写法。假定我们有两张表,一张表为Product表存放产品信息,其中有产品价格列Price;另外一张表是

MySQL 多表 update 有几种不同的写法。

假定我们有两张表,一张表为Product表存放产品信息,其中有产品价格列Price;另外一张表是ProductPrice表,我们要将ProductPrice表中的价格字段Price更新为Price表中价格字段的80%。

在Mysql中我们有几种手段可以做到这一点,一种是update table1 t1, table2 ts ...的方式:

UPDATE product p, productPrice pp

SET pp.price = pp.price * 0.8

WHERE p.productId = pp.productId

AND p.dateCreated < '2004-01-01'

另外一种方法是使用inner join然后更新:

UPDATE product p

INNER JOIN productPrice pp

ON p.productId = pp.productId

SET pp.price = pp.price * 0.8

WHERE p.dateCreated < '2004-01-01'

另外我们也可以使用left outer join来做多表update,比方说如果ProductPrice表中没有产品价格记录的话,将Product表的isDeleted字段置为1,如下sql语句:

UPDATE product p

LEFT JOIN productPrice pp

ON p.productId = pp.productId

SET p.deleted = 1

WHERE pp.productId IS null

另外,上面的几个例子都是两张表之间做关联,但是只更新一张表中的记录,其实是可以同时更新两张表的,如下sql:

UPDATE product p

INNER JOIN productPrice pp

ON p.productId = pp.productId

SET pp.price = pp.price * 0.8,

p.dateUpdate = CURDATE()

WHERE p.dateCreated < '2004-01-01'

两张表做关联,,更新了ProductPrice表的price字段和Product表字段的dateUpdate两个字段。

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

mysql更新多表sql语句怎么写_MySQL多表updatesql语句总结相关推荐

  1. mysql修改数据的sql语句怎么写_MySQL数据库修改数据语句的简单用法

    1.insert语句 MySQL的insert语句有两种方式: INSERT INTO tablename() VALUES(列值); INSERT INTO tablename SET column ...

  2. mysql删除数据库数据库语句怎么写_mysql数据库的删除语句怎么写

    我就废话不多说了,大家还是直接看代码吧~create or replace function aa1(a1 integer[],a2 bigint) returns void AS $$declare ...

  3. mysql更新两表所有记录语句怎么写_mysql 一条sql语句update更新两个表

    mysql 一条sql语句update更新两个表 你写过一条sql语句来修改两个表的数据吗? UPDATE test.table1 t1,test.table2 t2 SET t1.aa='a',t1 ...

  4. mysql update语句怎么写_mysql更新语句怎么写?

    MySQL更新语句也就是MySQL中的update语句,当我们需要更新或者修改表中的数据时,就会使用这个update语句,下面我们就来看一下mysql更新语句的具体写法. MySQL中update语句 ...

  5. 创建bbs mysql语句怎么写_MySQL常用语句 | 小灰灰博客

    常用的语句 查询 select * from bbs where id=1; 增加 insert into bbs (name,data_year) values ("jack", ...

  6. 在MySQL中如何用SQL命令创建数据库及数据表

    HRELLO 大家好! 上期给大家讲解了,MySQL数据库常用的管理命令.现在,给大家讲解,如何用SQL命令在MySQL中创建一个数据库及数据表. 在学习前,我们首先要了解,SQL命令是什么? SQL ...

  7. mysql数据库条件语句怎么写_Mysql数据库的条件查询语句

    对于分析人员来讲,Mysql数据库应用最多的是select查询语句,此篇文章主要介绍Mysql数据库的查询语句. 一.单表查询 1.带条件的查询 基本语法:select * from +表名称 +wh ...

  8. mysql多表添加怎么写_mysql多表连接的几种写法

    在数据库进行多张表的查询,必定会用到多表关联,只要是多表关联,就会产生笛卡儿积(什么是笛卡儿积:最简单的解释,就是你要关联的每张表总记录的乘积),所以一定要写关联条件.关联条件就是在所产生的笛卡儿积之 ...

  9. mysql锁表问题的解决方法_MYSQL锁表问题的解决方法

    本文实例讲述了MYSQL锁表问题的解决方法.分享给大家供大家参考,具体如下: 很多时候!一不小心就锁表!这里讲解决锁表终极方法! 案例一 mysql>show processlist; 参看sq ...

最新文章

  1. 又踩到Dubbo的坑,但是这次我笑不出来
  2. 全国信息化计算机应用技术水平教育考试,全国信息化计算机应用技术水平教育考试试卷.doc...
  3. 133. Leetcode 477. 汉明距离总和 (位运算-汉明距离相关题目)
  4. Php正则替换字符串
  5. pandas输出到excel_python读写excel等数据文件方法汇总
  6. 网络知识:详解各种路由器组网方法!
  7. 如何在 Visual Studio 2019 中连接中国版 Azure
  8. 打不死我的,终将使我强大!DevOps黑客马拉松参赛心得
  9. 诗与远方:无题(十九)
  10. WordPress的基本知识
  11. Linux---弹球游戏
  12. 移动端动画使用transform提升性能
  13. Flexsim——初学AGV必看的知识点(如何解决AGV在不同区域speed不同)
  14. 你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
  15. 【问】SQL 2008安装一直提示重启计算机失败
  16. indesign里怎么打根号_indesign 数学符号
  17. 计算机组成原理期中考,计算机组成原理期中考卷
  18. 定期报告系统服务器出错 1,做好Web服务器的日常维护必备常识
  19. 量化干货 | 机器学习能否助力风险投资?
  20. WWF(Windows Workflow Foundation)的简介

热门文章

  1. 台式计算机 启用时间,关于台式电脑启动时间
  2. 优势k歌软件功能说明
  3. 【CV】ShuffleNet V2:高效 CNN 架构设计的实用指南
  4. 决策树算法面试问题汇总
  5. Kali之zip压缩包密码爆破
  6. php2020春节倒计时,春节倒计时_2019_01_21
  7. windows服务器系统加固
  8. HI3516AD+OV4689内核编译
  9. mysql 127.0.0.13306_MySQL 问题解决
  10. Windows编程课程学习笔记