mysql基础积累-多表关联update

场景:
        多表关联update
环境:
        MySQL 5.5.54 , SQLyog Ultimate 64
1.多表关联update

UPDATE SENSOR_COLLECT_DATA A 
   JOIN SENSOR_COLLECT_A B 
   ON A.SENSOR_ID = B.SENSOR_ID AND A.REGION = B.REGION 
   JOIN SENSOR_COLLECT_B C 
   ON B.SENSOR_ID = C.SENSOR_ID AND B.REGION = C.REGION
   SET A.S1 = B.S1, A.S2 = C.S1
 WHERE A.SENSOR_ID = 20191401
   AND A.REGION = '2019';

2.原始数据截图
  
3.更新后截图
  
4.附建表语句1

CREATE TABLE `sensor_collect_data` (
  `sensor_id` INT(11) DEFAULT NULL,
  `region` VARCHAR(16) DEFAULT NULL,
  `s1` DECIMAL(6,3) DEFAULT NULL,
  `s2` DECIMAL(6,3) DEFAULT NULL,
  `s3` DECIMAL(6,3) DEFAULT NULL
) ENGINE=INNODB DEFAULT CHARSET=utf8

5.附建表语句2

CREATE TABLE `sensor_collect_a` (
  `sensor_id` INT(11) DEFAULT NULL,
  `region` VARCHAR(16) DEFAULT NULL,
  `s1` DECIMAL(6,3) DEFAULT NULL
) ENGINE=INNODB DEFAULT CHARSET=utf8

6.附建表语句3

CREATE TABLE `sensor_collect_b` (
  `sensor_id` INT(11) DEFAULT NULL,
  `region` VARCHAR(16) DEFAULT NULL,
  `s1` DECIMAL(6,3) DEFAULT NULL
) ENGINE=INNODB DEFAULT CHARSET=utf8

7.对比,此语句oracle暂时不支持.
以上,感谢.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值