서브 쿼리: 하나의 SQL문 안에 포함되어 있는 또 다른 SQL 문(서브 쿼리는 메인 쿼리 컬럼 사용가능 반대X)
-속성:
- 단일행 비교 연산자는 서브 쿼리의 결과가 반드시 1건이하, 복수행은 상관 없음
- 서브쿼리에선 ORDER BY를 사용하지 못함. 따라서 메인 쿼리의 마지막 문장에 위치해야함
- 사용 가능 위치: SELECT, FROM, WHERE, HAVING, ORDER BY, INSER문의 VALUES, UPDATE SET절
-반환 형태에 따른 서브 쿼리:
- 단일 행 서브 쿼리: 실행 결과가 1건 이하(비교 연산자와 함께 사용 = > < <= >= <>)
- 다중 행 서브 쿼리: 실행 결과가 여러 건인 서브 쿼리(다중 행 비교 연산자와 사용 IN ALL ANY SOME EXISTS)
- 다중 컬럼 서브 쿼리: 여러 컬럼 반환, 여러 컬럼 동시 비교 가능, 서브 쿼리 = 메인 쿼리 컬럼 수와 순서가 동일해야함
- 스칼라 서브 쿼리: select 절에 있는 서브 쿼리
- 인라인 뷰 서브 쿼리: From 절에 들어가는 서브 쿼리
-뷰:
- 독립성=테이블 구조가 변경되어도 뷰를 사용하는 응용프로그램은 변경하지 않아도 된다
- 편리성-복잡한 질의를 뷰를 생성함으로써 관련 질의를 단순하게 작성
- 보안성-숨기고 싶은 정보를 뷰를 생성 할 때 해당 컬럼을 빼고 생성
반응형