ORACLE:LISTAGG花了太长时间输出我的结果

时间:2016-08-19 20:38:03

标签: python oracle listagg

下面是我通过Python中的Oracle API传递给Oracle服务器的SQL字符串。我怀疑listagg函数是延长处理时间的原因。如果没有listagg函数,结果将在以下SQL所用时间的一半时间内进行解析。任何建议或修正都非常受欢迎。

SELECT to_char(a.transaction_dt, 'MM/DD/YYYY'), 
        a.sub_acct_nbr, 
        a.trn_ldgr_entr_desc, 
        a.fdoc_nbr, 
        a.fin_object_cd,
        a.fin_sub_obj_cd, 
        a.fin_obj_cd_nm, 
        b.explanation, 
        (select listagg(c.txt, ';') WITHIN GROUP (order by a.fdoc_nbr) from View3 c where a.fdoc_nbr = c.fdoc_nbr) Notes, 
        to_char(a.trn_ldgr_entr_amt, '9,999,999.99'), 
        a.trn_debit_crdt_cd
    FROM  View1 a
    LEFT OUTER JOIN View2 b
    ON  a.fdoc_nbr = b.doc_hdr_id
    WHERE   a.account_nbr = 123456
    AND     a.univ_fiscal_prd_cd = 12
    AND     (a.fin_object_cd BETWEEN '5000' AND '7999'
    OR      a.fin_object_cd BETWEEN '9902' AND '9905')
    ORDER BY a.transaction_dt;

0 个答案:

没有答案