网站首页 > 技术文章 正文
有三个表,一个表为主表A,一个表为子表B,一个表为孙表C。
其中B表保存有A表的主键,C表保存有A表和B表的主键。由于数据问题,有一批C表的数据没有保存B表的主键,现在需要进行批量更新C表,将B表的主键刷新到C表。
思路:
涉及到三张表,显然需要进行关联。B表和C表需要每一行对应,找到关联,而A表只要能确定C表的范围即可
update C表 t1
set t1.b_id = (select id from B表 t2 where t1.关联条件 =t2.关联条件 )
WHERE EXISTS(SELECT 1 FROM b2b_order_item t2 WHERE t1.关联条件 =t2.关联条件)
and t1.a_id in (select id from A表 t3 where 范围);
执行sql,正常。
- 上一篇: 多表关联查询的性能优化技巧:预关联
- 下一篇: 性能优化技巧:大事实表与大维表关联
猜你喜欢
- 2025-07-14 徐工机械与甲骨文、汉得签订战略合作协议
- 2025-07-14 百度关联公司投资上海得帆信息技术有限公司
- 2025-07-14 深度分页为何让MySQL/Oracle集体“罢工”?
- 2025-07-14 PL/SQL 多表关联UPDATE(sql 多个表关联)
- 2024-10-19 详解oracle分页存储过程---附实例分享
- 2024-10-19 详解Oracle 数据库enq:TX-index contention等待事件及解决方案
- 2024-10-19 分享一个在表关联时降低业务逻辑复杂度的查询sql
- 2024-10-19 「Oracle」为大家带来connect by的用法,Oracle的递归
- 2024-10-19 基于dba_lobs查找Oracle中lobsegment、lobindex与表之间关系
- 2024-10-19 Oracle项目管理系统之沟通协作 oracle 合作伙伴
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- oracle面试 (55)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)