sql批量更新update嵌套select更新
概述
有两张表【user】和【city】,user表的
city_uuid
、city_no
和 city 表的city_uuid
、city_no
一一对应,但是 user 表只有city_uuid
,这时候需要将 city 对应的city_no
批量更新到 user 表中
批量更新方式
第一种方式(inner join 内连接)
update u
set u.city_no = c.city_no
from user u
inner join city c
on u.city_uuid = c.city_uuid
where u.city_uuid is not null and u.city_no is null
第二种方式(子查询)
update u
set u.city_no = (select c.city_no from city c where u.city_uuid = c.city_uuid)
from user u
第三种方式:(笛卡尔积)
update u
set u.city_no = c.city_no
from [user] u, city c
where u.city_uuid = c.city_uuid
update 多表更新
update table1 t1,table2 t2, table3 t3, ... , tablen tn
set t1.column= ?, t2.column, t3.column = ?, ... , tn.column = ?
where t1.xx= ?, t2.xx = ?, ... , tn.xx = ?
案例:(conditionUuid是user表的外键,每个conditionUuid对应两条user记录,将producter记录覆盖consumer记录的指定字段值)
update r2
set r2.userUuid = r1.userUuid, r2.userName = r1.userName , r2.age = r1.age, r2.updatedTime = '2021-02-22 22:22:22.222'
from user r1
inner join user r2
on r1.conditionUuid = r2.conditionUuid
where r1.conditionValue = 'condition-consumer-00000000000000000' and r1.userName is not null
and r2.conditionValue = 'condition-producter-0000000000000000' and r2.userName is not null
sql批量更新update嵌套select更新相关推荐
- linux如何更新数据包up,Linux更新(update/upgrade) 修改更新源
类似于windows的自动更新,linux也有相应的更新方式. 更新命令: $sudo apt-get update #更新 $sudo apt-get upgrade #升级,需要用update更新 ...
- mysql 批量update sql_批量更新sql |批量update sql
zencart批量更新后台邮箱地址sql zencart批量更新后台邮箱地址sql UPDATE `configuration` SET `configuration_value` = '新邮箱地址' ...
- batchupdate写法_mybatis执行批量插入insert和批量更新update
Mybatis批量插入和批量更新数据的资料相信大家从网上能查找到很多资料,本文重点总结一下mybatis执行批量插入insert和批量更新update数据.在mysql数据库中批量插入,如:inser ...
- Oracle\MS SQL Server的数据库多表关联更新UPDATE与多表更新
一条Update更新语句是不能更新多张表的,除非使用触发器隐含更新.而表的更新操作中,在很多情况下需要在表达式中引用要更新的表以外的数据.我们先来讨论根据其他表数据更新你要更新的表 一.MS S ...
- 如何从SQL Server中的SELECT更新?
在SQL Server中 ,可以使用SELECT语句insert表中: INSERT INTO Table (col1, col2, col3) SELECT col1, col2, col3 FRO ...
- Oracle数据库之oracle update set select from 关联更新
本文主要向大家介绍了Oracle数据库之oracle update set select from 关联更新,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助. 工作中有个需求,现在 ...
- sql 批量更新时间字段加小时
sql 批量更新时间字段加小时 update 表名 set 时间字段=时间字段+12/24 where 条件 sql update su_user t set t.update_time = t.up ...
- mybatis 批量更新update详解
1 更新单条记录 UPDATE course SET name = 'course1' WHEREid = 'id1'; 2 更新多条记录的同一个字段为同一个值 UPDATE course SET ...
- oracle update set select,oracle update set select from 关联更新
工作中有个需求,现在新表中有一些数据跟老表的基本一样,这样只需要把老表中数据搬到新表中就可以了,同时把不同的字段修改下数据即可,在修改字段时发现,需要指定一个条件,比如主键id,来修改某条记录,这样一 ...
最新文章
- Jupyter notebook与Spyder集成
- 搭建git服务器(权限管理)
- php100 代码,php_100 PHP源代码 - 下载 - 搜珍网
- bfc是什么_关于margin的两个经典bug,以及bfc简述
- 【渝粤教育】广东开放大学 网络完全与技术 形成性考核 (44)
- python机制_python异常机制个人理解(参考网上资料)
- Linux下修改只读文件
- 深入浅出MFC笔记(5)
- 小米路由器显示DNS服务器设置错误,小米路由器dns异常怎么修复
- PTA数据结构-01-复杂度1 最大子列和问题
- 微信支付商户平台,企业付款,企业向个人付款接口总结
- 有一个3×4的矩阵,要求编程序求出其中值最大的那个元素的值,以及其所在的行号和列号
- 复旦python课补考_复旦学姐说:“这段科研,最终帮助我这个零经验小白拿下了量化岗实习!”...
- 服务器异常 随机名称的进程CPU资源占用过高
- nlp-问答任务-抽取式问答
- PIXI_锚点图片位控
- 硬盘无法格式化及RAW格式的另一种处理方法
- 腾讯云点播 - 视频防盗加密 - 使用总结
- JavaWeb仿twitter个人社交网络及微博服务网站
- 用CSS3如何实现钟摆动画的导航栏菜单效果
热门文章
- hive币涨幅空间大吗_HIVE币今日价格_HIVE币最新消息_HIVE币行情走势图 - 币界网
- Windows如何打开heic文件,一招就可以学会
- 快消品季度销量排序预测-线性回归预测分析
- 程序员:去你Y的“油腻中年”!
- python二级用的是什么软件_考计算机二级用啥软件练
- 手机可以连接多少个蓝牙设备?
- Android之实现手势缩放imageview中的图片
- 什么是KYC,KYC认证的重要性
- 蔚来汽车在港交所上市,年初至今销量延续疲软状态
- 二叉排序树的平均查找长度(成功不成功)