하나의 SQL문 안에 포함되어 있는 SQL문
단일 행 서브쿼리 [Single Row Subquery] |
* 서브쿼리 실행 시 결과로 한 행만 출력 * 비교연산자[ =,<,<=,>,>=,<> ]를 사용 |
다중 행 서브쿼리 [Multi Row Subquery] |
* 서브쿼리 실행 시 결과로 여러 개의 행이 출력 * 다중 행 비교 연산자인 IN, ANY, ALL, EXISTS를 사용 |
다중 칼럼 서브쿼리 [Multi Column Subquery] |
* 서브쿼리의 실행 결과로 여러 칼럼을 반환 * 메인쿼리의 조건절에 여러 칼럼을 동시에 비교 * 서브쿼리와 메인쿼리에서 비교하고자 하는 칼럼 개수와 칼럼 위치가 동일해야 함 * SQL Server에서는 지원하지 않는 기능 |
# 스칼라 서브쿼리 예
스칼라 서브쿼리는 한 행,한 칼럼만을 반환
# 단일행 서브쿼리 예
다중행 비교 연산자
IN(서브쿼리) | 서브쿼리의 결과에 존재하는 임의의 값과 동일한 조건을 의미 → Multiple OR 조건 |
비교연산자 ALL (서브쿼리) |
서브쿼리의 결과에 존재하는 모든 값을 만족하는 조건을 의미 → 비교연산자로 ">"를 사용했다면 메인쿼리는 서브쿼리의 모든 결과 값을 만족해야 함 →서브쿼리 결과의 최대값보다 큰 모든 건의 조건을 만족 |
비교연산자 ANY (서브쿼리) |
서브쿼리의 결과에 존재하는 어느 하나의 값이라도 만족하는 조건을 의미 → 비교연산자로 ">"를 사용했다면 메인쿼리는 서브쿼리의 값들 중 어떤 값이라도 만족하면 됨 → 서브쿼리 결과의 최소값보다 큰 모든 건이 조건을 만족[SOME은 ANY와 동일] |
EXISTS (서브쿼리) | 서브쿼리의 결과를 만족하는 값이 존재하는지 여부를 확인하는 조건을 의미 → 조건을 만족하는 건이 여러 건이라도 1건만 찾으면 더 이상 검색하지 않음 |
[개미의 걸음 SQLD 2과목] 절차형 SQL 모듈 - 프로시저, 트리거, 사용자 정의 함수 (0) | 2021.01.02 |
---|---|
[개미의 걸음 SQLD 2과목] 절차형 SQL(PL/SQL, T-SQL) (0) | 2021.01.01 |
[개미의 걸음 SQLD 2과목] 계층형 질의 (0) | 2020.12.30 |
[개미의 걸음 SQLD 2과목] JOIN(외부조인, 내부조인, 등가조인 , 비등가조인 , 셀프조인, 네츄럴조인, 크로스 조인) (0) | 2020.12.29 |
[개미의 걸음 SQLD 2과목] SQL내장함수② 다중행(집계,그룹,윈도우) 함수 (0) | 2020.12.28 |
댓글 영역