# Subquery(서브쿼리)
- SQL 에서 쿼리안의 쿼리를 이용하는것을 Subquery 라고 부른다.
- 서브쿼리는 메인쿼리가 서브쿼리를 포함하여 종속적인 관계이다.
● 사용방법
SELECT 학과명, (SELECT count(*) FROM 교수 WHERE 학과.학과명 = 교수.학과명) AS 교수숫자 FROM 학과
=> 학과 테이블에서 학과명과, (교수테이블에서 학과에따른 교수숫자) 를 select한다.
from 절 예시 :
SELECT 학과명, 월급평균 FROM (SELECT 학과명, AVG(월급) AS 월급평균 FROM 교수 GROUP BY 학과명) WHERE 월급평균 > 5000
=> 학과명과 월급평균을 새로운 서브쿼리 테이블 : (교수테이블에서 <학과명, 학과명 별로 그룹화한 평균> 테이블) 중 월급평균이 5000 이상인 것만 SELECT한다.
출처: https://programming119.tistory.com/35 [개발자 아저씨들 힘을모아]
● 서브쿼리 사용할 때 주의할 점
1. 서브쿼리를 괄호로 감싸서 사용한다.
2. 서브쿼리는 단일 행 또는 복수 행 비교 연산자와 함께 사용 가능
3. 서브쿼리에서는 ORDER BY를 사용하지 못한다.
● 서브쿼리가 사용이 가능한 곳
- SELECT
- FROM
- WHERE
- HAVING
- ORDER BY
- INSERT문의 VALUES
- UPDATE문의 SET
- 서브쿼리도 별칭(alias) 사용이 가능하다.
● 서브쿼리의 종류
- 단일행 서브쿼리
- 다중행 서브쿼리
- 다중컬럼 서브쿼리
참조 : victorydntmd.tistory.com/139
'🌏 DataBase > MySQL' 카테고리의 다른 글
[MySQL] 전문 검색 기능 : FullText Search (4) | 2023.10.27 |
---|---|
[DB] JOIN 정리 ( INNER / LEFT / RIGHT ) (0) | 2021.06.25 |
[DB] 13.PL/SQL (0) | 2020.11.06 |
[DB] 12. 뷰(VIEW) (Feat.Oracle) (0) | 2020.11.05 |
[DB] 11. JPA(Java Persistent API) (Feat.Oracle) & Entity (0) | 2020.11.05 |