CONNECT BY
以下のようなandSTART WITH
ステートメントを使用したクエリがあります。IN 句のクエリは、実行に 5 秒もかからず、3000 行が返されます。fact_table
20M のレコードが含まれています。このクエリの実行には永遠に時間がかかるため、以下のこの SQL を最適化するにはどうすればよいですか :(
SELECT DISTINCT CONNECT_BY_ROOT a.dst_ID_key AS root_ID_key, a.src_ID_key
FROM fact_table a
CONNECT BY NOCYCLE PRIOR a.src_ID_key = a.dst_ID_key
START WITH a.dst_ID_key IN (SELECT b.ID_key
FROM TableA b
JOIN TableB c
ON (c.name = b.name AND c.school = b.school)
WHERE b.status = 'Active')