当你通过数据库链访问时,可以考虑加这个hint

890阅读 0评论2021-01-11 brjl
分类:Oracle


例如:
select   /*+driving_site(a) +driving_site(b)*/ prepose.transactionno as TRANSACTIONNO,
       '000101' as CompanyCode
from xxx@yyy a, mmm@nnn b, c
where ...

当前,很多数据库采用了ADG技术,因此有些开发人员会利用备库进行一些报表查询。

分布式查询语句中可能有不同远程库的表,优化分布式查询要达到3点目标:

1. 访问同一个远程库的次数要尽量少,也就是同一远程库的对象应该尽量转为一条SQL运算,一次运算,运算后将结果返回给本地库。

2.从远程库上返回到本地库的结果集要尽量小,只访问远程对象需要的字段,从而减少网络传输。

3.远程库上执行的语句的执行计划、远程库返回的结果与本地联合查询的计划应该比较高效。


上一篇:标识客户端,让oracle知道你是谁,你从哪里来,你到哪里去
下一篇:诊断 expdp 问题