문제가 있습니다. 테이블에서 복제본을 표시하려고합니다.테이블에서 복제본을 표시하는 방법은 무엇입니까?
이 관계 나 관심 c.contract_nr
SELECT intermediary_nr, beneficiary_role, contract_nr
FROM (SELECT *
from (select intermediary_nr,
beneficiary_role,
max(contract_nr) contract_nr
from boscs.atcs_commission_beneficiary
where beneficiary_role = 'LEAD'
and intermediary_nr is not null
group by intermediary_nr, beneficiary_role
ORDER BY dbms_random.value)
union all
SELECT *
from (select intermediary_nr,
beneficiary_role,
max(contract_nr) contract_nr
from boscs.atcs_commission_beneficiary
where beneficiary_role = 'SUP_FOR_LEAD'
and intermediary_nr is not null
group by intermediary_nr, beneficiary_role
ORDER BY dbms_random.value)
union all
SELECT *
from (select intermediary_nr,
beneficiary_role,
max(contract_nr) contract_nr
from boscs.atcs_commission_beneficiary
where beneficiary_role = 'COAGENT'
and intermediary_nr is not null
group by intermediary_nr, beneficiary_role
ORDER BY dbms_random.value))
선택 intermediary_nr, beneficiary_role, contract_nt 경우 a.contract_nr = b.contract_nr = PL SQL
에 내 코드입니다. 이 문제를 해결하는 방법에 대한 조언을 부탁드립니다. 아이디어가 있습니까? a, b, c에 대해 동일한 contract_nr 인 정보 만 표시하려고합니다. 나머지는 그렇지 않습니다. 누구든지이 질문을 완료하는 방법을 알고 있습니까?
질문이 표시되지 않습니다. 나는 당신이 성취하려는 것을 따르지 않습니다. 내가 게시 한 코드가 오류를 던지고 있는지 여부, 원하는 결과를 얻지 못하고 있는지, 또는 다른 것이 있는지 여부는 확실하지 않습니다. 이런 종류의 쿼리에서 왜 dbms_random.value 명령을 사용했는지 짐작할 수 없습니다. 재현 가능한 테스트 케이스를 원하는 결과와 함께 게시하면 탁월한 도움이 될 것입니다. –
내 코드는 하위 쿼리와 일치하는 3 개의 결과를 모두 throw합니다. 위의 관계를 만족하는 복제 만 보여주고 싶습니다. contract_nr first subquery = contract_nr of 2 subquery = 3 subqueries의 contract_nr –
죄송 합니다만,이 문맥에서 "중복 만"이라는 것이 무엇인지 모르겠습니다. 어쩌면 당신은'합집합 '이 아닌'교차'를 사용하려고합니다. 그러나 그것은 어둠 속에서 나를 찾아 다니는 것입니다.재현 가능한 테스트 사례가 도움이 될 것입니다. ! http://i.stack.imgur.com/TzKbF.png 선택 intermediary_nr, beneficiary_role, contract_nt 경우 a.contract_nr = b.contract_nr : –