뷰의 모든 행에 대해 고유 한 식별자를 만들려고합니다. 내가 가지고있는 뷰가 많은 테이블을 결합하므로 아무 테이블의 기본 키도 내가 행을 식별하는 데 도움이되지 않습니다.Oracle Join 뷰에서 ROWID를 사용하는 방법
Google 검색을 수행하면 ROWID를 사용하여이를 달성 할 수있는 것처럼 보입니까? 하지만 뷰의 rowid를 참조하는 방법을 잘 모르겠습니다. 아래는 내가 어떻게 ROWID가 작동하는지 예를 들어 보았지만 rowid에 대한 특정 테이블을 지정하지 않았기 때문에 분명히 '모호한 열'오류로 실패합니다.
예 :
with v_someTable (select...),
v_anotherTable as (select blah, id from v_someTable where...),
v_yetAnotherTable as (select foo, id from v_someTable where...)
select distinct rowid, rt.key, v1.blah, v2.foo
from realTable rt
left join v_anotherTable v1 on v1.id=rt.id
left join v_yetAnotherTable v2 on v2.id=rt.id
나는 쿼리가 아닌 저장 프로 시저에서이 작업을 수행하려합니다. 어떤 도움을 주시면 감사하겠습니다!
감사합니다.
Gotcha, 내가 원했던 것을 달성하기 위해 기본 키들을 연결했습니다. 감사! – user973479