반응형
Subquery의 개념
- subquery란 하나의 SQL문 안에 포함되어 있는 또 다른 SQL문을 말한다. 서브쿼리는 메인쿼리가 서브쿼리를 포함하는 종속적인 관계이다.
서브쿼리를 사용 할 때 주의점
- 서브쿼리를 괄호로 감싸서 사용한다.
- 서브쿼리에서는 ORDER BY를 사용하지 못한다.
- 서브쿼리는 단일 행 또는 복수 행 비교 연산자와 함께 사용 가능하다.
FROM 절 서브쿼리
- 가상의 테이블을 만든다 생각하면 편하다. 동적으로 생선된 테이블이라 생각하면 된다.
- 임시적인 뷰이기 때문에 데이터베이스에 저장되지는 않는다.
- ex)
SELECT daily_stats.week
, AVG (daily_stats.incidents_daily
FROM (
SELECT week,
date,
count (incident_id) AS incidents_daily
FROM crimes
GROUP BY week,date
)daily_ stats
GROUP BY daily_stats.week
WHERE 절 서브쿼리
- ex)
SELECT *
FROM crimes
WHERE date = (SELECT MIN (date) FROM crimes)
SELECT \*
FROM crimes
WHERE date IN ( SELECT date FROM crimes ORDER BY date DESC LIMIT 5)
참고사이트
'SQL > MySQL' 카테고리의 다른 글
[MySQL] Subquery를 이용한 심화문제 (Hacker Rank - Challenges)풀어보기 (0) | 2022.02.16 |
---|---|
[MySQL] 서브쿼리 해커랭크(Top Earners), 리트코드(Department Highest Salary) 예제문제 풀어보기 (0) | 2022.02.14 |
[MySQL] DML (Data Manipulation Language) 예제 문제 풀어보기 with LeetCode (0) | 2022.02.06 |
[MySQL] DML (Data Manipulation Language) (0) | 2022.02.03 |
[MYSQL] 해커랭크 문제풀기 Symmetric Pairs (0) | 2022.01.30 |