Helpful Information
 
 
Category: Oracle Development
Query Optimization (Urgent)

Can somebody suggest me better way to write this query.
Thanks in advance.


SELECT DISTINCT clcla.parn_cl_id cl_id
FROM v_regs_clcla clcla,
(
SELECT a.parn_cl_id , a.cl_id
FROM v_regs_clh clh,
(
SELECT DISTINCT z.parn_cl_id,z.cl_id,z.pr_id , z.cmp_pr_id
FROM v_regs_prh prh , spc spc,
(

SELECT DISTINCT clcla.parn_cl_id,clpsh.cl_id,clpsh.pr_id , NVL(prpra.pr_id,clpsh.pr_id) AS cmp_pr_id
FROM v_regs_clcla clcla, v_regs_clpsh clpsh, v_regs_prpra prpra
WHERE clcla_typ_c = 104
AND clcla_eff_to_dt IS NULL
AND clcla_stus_c = 'A'
AND clcla.cl_id = clpsh.cl_id
AND clps_ackrat_catg_c IN (pc_ASC,pc_ASO,pc_CPL,pc_RFA,pc_RTS)
AND clps_stus_c = 'A' AND clps_mkt_stus_c = 100
AND clpsh_wrk_flow_c= 7
--AND (clps_eff_to_dt >= regs_pkg_maint.STLM_DATE OR clps_eff_to_dt IS NULL)
AND (clps_cn_end_dt >= regs_pkg_maint.STLM_DATE )
AND clcla.parn_cl_id = NVL(c_cl_id_in, clcla.parn_cl_id)
AND clpsh.pr_id = prpra.parn_pr_id (+)
AND prpra_typ_c (+)= 2000
AND prpra.prpra_stus_c (+) = 'A'
--AND (prpra.prpra_eff_to_dt >= regs_pkg_maint.STLM_DATE OR prpra.prpra_eff_to_dt IS NULL)
) z

WHERE z.pr_id = prh.pr_id
AND prh.copc_id = spc.copc_id
AND prh.pr_stus_c='A'
AND spc.stlm_rcd_sta_cd='A'
AND spc.spc_rt_reqd_in = 'Y'
AND prh.prh_rec_mtn_ts = ( select max(prh_rec_mtn_ts) from v_regs_prh prh_inner
where prh_inner.pr_id = prh.pr_id and prh_inner.pr_stus_c='A')
) a
WHERE clh.cl_id = a.parn_cl_id
AND cl_stus_c = 'A'
AND cl_acct_typ_c NOT IN (4,6,10)
AND NVL(cl_prtnr_aff_c,'XXX') <> 'A'
) b
WHERE b.cl_id = clcla.cl_id
AND clcla_typ_c = 104
AND clcla_stus_c = 'A'
AND clcla.parn_cl_id NOT IN ( SELECT DISTINCT CL_ID FROM V_REGS_CLCLA X WHERE X.CL_ID =
clcla.parn_cl_id AND X.clcla_typ_c IN (101,102,111));

Go to Quest.com, download TOAD and some other SQL tuning program to help you streamline your code. it will show u the improvement in CPU usage, I/O rate... etc.

Without knowing your table structure and the desired result it's very hard to help you.
One thing for shure is to look at the explain plan to check execution.










privacy (GDPR)