2017-05-18 23 views
0

エラーの原因:ORA-00904: "DR"。 "DLR_KEY":無効な識別子? Oracleバージョン12.1.0.2.0無効な識別子を持つOracle XMLTableエラー

「left outer join user_dealer ...」行をコメントアウトすると、問合せは正常に実行されます。

select dr.dlr_key, 
    dr.dlr_reference_num, 
    dr.dlr_name 
from dealer dr, 
    XMLTable('/DLR' 
     PASSING dr.DLR_DEALER_DATA 
     COLUMNS 
     DlrMiscPymtPlan varchar(100) PATH 'DlrMiscPymtPlan' 
     ) as a2 
inner join wuser wu on wu.wu_key = 1 
left outer join user_dealer ud on ud.udl_dlr_fkey = dr.dlr_key 
    and ud.udl_usr_fkey = 1 
where (
     UPPER(DLR_NAME) like 'MLB%' 
     and (UPPER(a2.DlrMiscPymtPlan) like 'P') 
     ) 

答えて

0

この問題は、XMLTableが暗黙的にどのように結合するかを扱います。 このクエリは動作します。サイト上の情報へ

select dr.dlr_key, 
    dr.dlr_reference_num, 
    dr.dlr_name 
from dealer dr left outer join 
    XMLTable('/DLR' 
     PASSING dr.DLR_DEALER_DATA 
     COLUMNS 
     DlrMiscPymtPlan varchar(100) PATH 'DlrMiscPymtPlan' 
     ) as a2 on 1=1 
inner join wuser wu on wu.wu_key = 1 
left outer join user_dealer ud on ud.udl_dlr_fkey = dr.dlr_key 
    and ud.udl_usr_fkey = 1 
where (
     UPPER(DLR_NAME) like 'MLB%' 
     and (UPPER(a2.DlrMiscPymtPlan) like 'P') 
     ) 

ありがとう: Using join with xmltablexmltable with left outer join

関連する問題