例: select a.prod_id,a.prod_name,b.price,b.data_date from prod a inner join prod_price b on a.prod_id = b.prod_id
例如这个例子 在用 inner join 时,两个表都有多条数据,存储过程效率特别慢,有什么好方法吗?
oracle inner join 链接 多对多 效率优化
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
4条回答 默认 最新
关注这哪里多对多了?你的prod里,难道prod_id不是主键?会有重复值?
在oracle里,极少使用join去关联表,因为oracle的CBO会进行自动优化,除非是要做full join。
像你这个例子,在oracle中的常规sql写法应该为select a.prod_id,a.prod_name,b.price,b.data_date from prod a , prod_price b where a.prod_id = b.prod_id;如果这个sql效率慢,那就说明你这两个表上的索引没建或者建得不对,另外,还要查看下prod_price是否存在高水位的情况
解决 无用评论 打赏 举报