古いバージョンのOracle 8.1.7のデータベースがあり、以下のユニオンクエリを実行しています
select c_ordine_es
,c_ordine_salesnet
,v_oyov
,v_annuale
,v_oneoff
,v_canone
,c_operatore_tam
from v_ordine_cliente_easysell
where d_ultima_modifica>DataRif
union
select c_ordine_es
,c_ordine_salesnet
,v_oyov
,v_annuale
,v_oneoff
,v_canone
,c_operatore_tam
from v_ordine_cliente_easysell v
,scarti_interfaccia_easysell_o s
where s.c_codice_es=v.c_ordine_es
and s.t_tabella_es=pkType.K_SCARTO_ORDINE_CLIENTE;
これらのクエリを実行するたびに、SQL クライアント (私は Toad を使用しています) がハングします。ここでデータについて言及する必要がv_ordine_cliente_easysell
あり、scarti_interfaccia_easysell_o
これら 2 つのビュー/シノニムは DB リンク (別の SIEBEL DB へ) を使用してフェッチされます。SIEBEL DB は常に非常にビジーであるため、DB_LINK を介してデータをフェッチするときに問題が発生していると思います。上記のクエリを調整する方法を教えてください。
説明計画は次のようになります
操作オプション OBJECT_NODE 位置 コスト カーディナリティ バイト 選択ステートメント 28 28 478912 61779648 ハッシュ結合 1 28 478912 61779648 INDEX 高速フルスキャン 1 2 11354 102186 リモート SIEB.WORLD 2 23 4218 506160