PL/SQL oracle上多表关联的一些记录

1.记录自己在PL/SQL上写的几张表的关联条件没有跑出来的一些优化

  1. join后面跟上筛选条件

left join on t1.id = t2.id and --- 带上分区字段,如 t1.month = 202405,

操作跑不出来的一些问题,可能是数据量过大,未做分区过滤

  1. 创建临时表

CREATE TABLE testtable COMPRESS NOLOGGING TABLESPACE

在多表关联如下时,可以为一些从表创建临时表,提前在内存中存储,这样可以提高一定的查询效率。 临时表需要定期清理。

select

from t1

join t2 on t1.xx = t2.xx

join t3 on t1.xx = t3.xx

....

  1. 在我尝试做一些从表的临时表时候,我对比了自己写的with CTE子查询的方法,发现

cte的方式多个子查询,与多张临时表的方式,来完成多表连接,效率上的差距大都差不多。

  1. 按照经理的指点,记得关联从表是,如关联t2表时,需要做关联字段的唯一性校验。

select count(1),count(distinct t2.id) from t2 避免数据量过大或者笛卡尔积。

相关推荐
天海华兮2 分钟前
mysql 去重 补全 取出重复 变量 函数 和存储过程
数据库·mysql
gma9991 小时前
Etcd 框架
数据库·etcd
爱吃青椒不爱吃西红柿‍️1 小时前
华为ASP与CSP是什么?
服务器·前端·数据库
Yz98762 小时前
hive的存储格式
大数据·数据库·数据仓库·hive·hadoop·数据库开发
武子康2 小时前
大数据-230 离线数仓 - ODS层的构建 Hive处理 UDF 与 SerDe 处理 与 当前总结
java·大数据·数据仓库·hive·hadoop·sql·hdfs
苏-言2 小时前
Spring IOC实战指南:从零到一的构建过程
java·数据库·spring
Ljw...2 小时前
索引(MySQL)
数据库·mysql·索引
菠萝咕噜肉i2 小时前
超详细:Redis分布式锁
数据库·redis·分布式·缓存·分布式锁
长风清留扬2 小时前
一篇文章了解何为 “大数据治理“ 理论与实践
大数据·数据库·面试·数据治理
OpsEye2 小时前
MySQL 8.0.40版本自动升级异常的预警提示
数据库·mysql·数据库升级