SUBQUERY

2020. 12. 18. 17:13Database/Oracle

SubQuery (서브쿼리) 란?

SQL 문장의 절에 들어있는(NESTEDED) 또 다른 SELECT 문장입니다.

즉, WHERE절이나 FROM 절에서 사용되는 쿼리를 서브쿼리라고 한다.

 

SubQuery

  • 보통 Subquery 는 Main Query 이전에 한번 실행된다.
  • Subquery 에서는 ORDER BY 를 사용하지 못한다.
  • 단일 행(Sing-Row) Subquery : Subquery(SELECT) 문으로부터 하나의 행만 검색
  • 다중 행(Multiple-Row) Subquery : Subquery(SELECT) 문으로부터 하나 이상의 행 검색
  • 다중 열(Multiple-Column) Subquery : Subquery(SELECT) 문으로부터 하나 이상의 컬럼 검색.
  • FROM절의 Subquery(INLINE VIEW) : FROM 절에 오는 Subquery로 VIEW 처럼 작동한다.

 

위치에 따른 SubQuery 명칭

  • SELECT 문에 있는 서브쿼리 : 스칼라 서브쿼리
  • FROM 절에 있는 서브쿼리 : 인라인 뷰
  • WHERE 절에 있는 서브쿼리 : 서브쿼리

 

EXISTS

  • EXISTS 는 IN 과 유사한 개념. ( ) 사이에 서브쿼리만 올 수 있다.
  • ( ) 안에 서브쿼리로 부터 해당 컬럼의 값의 존재유무만 체크를 한다.
  • 단순히 특정컬럼의 값을 이용할때에는 IN을 이용, 아니라면 서브쿼리를 이용하여 EXISTS를 사용하는것이 성능이 좋다.

'Database > Oracle' 카테고리의 다른 글

INDEX  (0) 2020.12.18
UNION  (0) 2020.12.18
HAVING  (0) 2020.12.18
GROUP BY  (0) 2020.12.18
Oracle Functions  (0) 2020.12.18