CRM 시스템에서 병합 된 고객 ID 기록이있는 테이블이 있습니다. 히스토리 리포팅 오라클 스키마의 데이터는 상호 작용 레코드가 생성 된 시점의 데이터입니다. 잠재적 인 이전 ID에서 고객과 관련된 현재 ID를 찾는 방법이 필요합니다. 좀 더 재미있게 만들려면 PL/SQL을 작성할 수있는 권한이 없습니다.이 데이터에 대해 Select 문만 작성할 수 있습니다. 고객 ID_MERGE_HIST 테이블에Oracle 재귀 선택 고객과 관련된 현재 ID 찾기
샘플 데이터
| OLD_ID | NEW_ID |
+----------+----------+
| 44678368 | 47306920 |
| 47306920 | 48352231 |
| 48352231 | 48780326 |
| 48780326 | 50044190 |
나는이처럼 보이는 결과 집합을 제공하기 위해 재귀 서브 쿼리와 쿼리를 원하는
| INTERACTION_ID | CUST_ID |
+----------------+----------+
| 1 | 44678368 |
| 2 | 48352231 |
| 3 | 80044190 |
샘플 상호 작용 테이블 :
를| INTERACTION_ID | CUST_ID | CUR_CUST_ID |
+----------------+----------+-------------+
| 1 | 44678368 | 50044190 |
| 2 | 48352231 | 50044190 |
| 3 | 80044190 | 80044190 |
참고 : Cust_ID 80044190은 한 번도 병합되지 않았습니다. ID_MERGE_HIST 테이블에는 나타나지 않습니다.
모든 도움을 주시면 감사하겠습니다.
실제로 Connect By로 시작했지만 각 반복마다 나에게 줄을주고 있다는 것을 알게되었습니다. First and Last라는 용어를 사용하면 실제로 Oracle의 집계 기능을 생각하게되었고 Last를 사용하여 Connect By 선택을 다른 선택으로 래핑하려고합니다. 그게 내가 그걸 알 수있게 해줄거야. – BarryTheSprout
데이터베이스 디자인을 제어 할 수 있다면이 링크가 유용 할 수 있습니다. http://stackoverflow.com/questions/4048151/what-are-the-options-for-storing-hierarchical-data-in-a-relational-database – vav