我的包中有一个游标,它使用远程DB链接。我想优化软件包的性能。所以我想从优化光标开始。
我会给出一些信息来分析,
查询的结构是
SELECT (SOME 90 COLUMNS)
FROM master1_all@db_one m1,
master2_all@db_one m2,
prey1@db_one pa,
prey2@db_one pb,
prey2@db_one pc,
tbl_abc@db_one xa,
(SELECT
geo.country,
geo.state
FROM tb_dest@db_one geo ) geo WHERE ( m1.master_key = m2.master_key ) AND
( pc.weather_key = m2.cloud_key ) AND
( m1.order_type_id = pa.weather_key ) AND
( pa.weather_key = pb.weather_key ) AND
( m2.food_store_key = xa.food_store_key ) AND
( (nvl(m2.shop_key ,121)) = xa.store_key ) AND
( geo.country (+) = m1.country ) AND
(xa.food_type NOT IN ('COLD')) AND
( m2.food_type_code NOT IN ('WINTER')
OR m2.price_per_portion !=0 ) AND
( ( m1.last_purchase_date >= TRUNC(SYSDATE-10) - 1/48 And m1.last_purchase_date <= TRUNC(SYSDATE) )
Or ( m2.last_purchase_date >= TRUNC(SYSDATE-10) - 1/48 And m2.last_purchase_date <= TRUNC(SYSDATE) ));
这不是实际的查询,但结构是相似的。
发布于 2016-10-21 08:39:12
首先,试着找出你的疑问瓶颈。如果仅在远程表执行查询时出现问题,可以使用提示/*+ DRIVING_SITE(.) */ elements006.htm#BABEGIJC,而oracle将尝试在remoute数据库上执行
https://stackoverflow.com/questions/40169345
复制相似问题