Oracle 12cR1 New Feature 중에 Lateral Inline View 가 있습니다.
골자는 SQL문에서 인라인뷰(Inline View) 사용시, 인라인뷰 내에서 메인쿼리의 테이블과 Join 할 수 있게 해주는 기능입니다.
(인라인뷰는 SQL Query 에서 From 절에 테이블대신 SQL을 사용하는 것)
아래와 같이 인라인뷰 내에서 메인쿼리의 EMP 테이블을 참조해서 Join 을 시도하는 경우 ORA-00904 에러가 발생합니다.
ORA-00904 에러는 테이블 또는 컬럼을 못 찾을때 발생하는 에러입니다.
( select * from DEPT d ... ) 인라인뷰 SQL 내에서는 e 테이블이 뭔지 알 수 없기 때문에 ORA-904 에러가 발생하고 있습니다.
Oracle 12cR1 버전부터 추가된 Lateral 이라는 키워드를 써주면 이게 가능해집니다.
Lateral 키워드 사용시 제약사항은,
Lateral View 내에서는 Pivot/Unpivot 절을 사용할 수 없고,
Outer Join 을 사용할 수 없습니다. (이 부분은 Lateral 키워드 대신 Outer Apply 키워드를 사용하면 가능)
'IT관련' 카테고리의 다른 글
ASM 구성시 LUN 크기, 갯수가 성능에 미치는 영향 (0) | 2020.10.21 |
---|---|
오라클 에러 정보 (ORA-01110) - 데이타파일 관련된 에러시 부가정보를 제공하는 (0) | 2020.10.05 |
오라클 DML(Insert, Update, Delete) 빈도를 가늠할 수 있는 DBA_TAB_MODIFICATIONS (테이블 변경 내역) (0) | 2020.08.13 |
자바 에러 - Unsupported major.minor version (oracle/jdbc/driver:OracleDriver.class) (0) | 2020.07.25 |
오라클 멀티테넌트 DB 접속 방법 (Connect Multi-Tenant by SQLPlus) (0) | 2020.07.02 |