1. Scalar 서브쿼리
1) Scalar 서브쿼리의 등장

- from 절에 사용되어 뷰처럼 쓰이기도 하고, where 절에 사용되어 하나의 조건 집합처럼 사용
- 오라클 8 버전부터 서브쿼리의 결과 값이나 함수처럼 사용하는 기능
- 8버전에는 제약이 많았으나 9버전 부터는 별다른 제약없이 편하게 사용
- SQL 튜닝 관점에서는 집합적인 개념을 적용하기 힘들므로, 사용을 자제해야함.

특성
- 함수처럼 하나의 값만을 출력 (서브쿼리가 select 절에서 사용된 경우)
- 오라클의 경우 PL/SQL 로 작성한 사용자 지정 함수(user defined function)을 대체 할 수 있음

2) Scalar 서브쿼리의 사용

3) Scalar 서브쿼리의 위치


2. Exists Correlated Update SQL
1) Exists Correlated Update SQL 활용법

※ 구문의 역활에 비해서 코딩의 양과 작성 시간이 증가함.
※ 단일 SQL 문의 사용으로 관리가 편리함

2) Exists Correlated Update SQL

※ 테이블 A와 B가 데이터가 빠짐없이 1:1 매치 된다면 문제가 없는 완성된 SQL 이지만, 위의 예와 같이 조건에 맞는 서브쿼리의 데이터가 메인쿼리의 데이터를 모두 매치시키지 못하는 경우에는 공집합이 되면서 nvl 함수도 무용지물이 되면서 원하는 데이터를 구하지 못하게 됨.
- 상기와 같이 테이블이 존재한다면 A'0102+DDD'에는 기존값 300이나 nvl 의 대체값인 0도 아닌, 공집합의 결과로 null 값이 업데이트 되는 문제가 생김.




3. Update 문의 확장 실습
1) 서브쿼리의 정의 및 특성





4. 이것만은 꼭!

더보기


 

크리에이티브 커먼즈 라이선스
Creative Commons License

설정

트랙백

댓글