MySQL | 서브쿼리
포스트
취소

MySQL | 서브쿼리

서브 쿼리란?

조인과의 차이점

  • 한 쿼리문 내 여러개의 테이블을 연결한 후 필요한 컬럼 조회

단일 행 서브쿼리

  • 서브 쿼리의 결과가 단일 행인 쿼리

예시1

시험결과 테이블에 (이름, 점수)가 있을 때, 가장 높은 점수를 가진 행을 가져오기

1
2
3
4
5
6
SELECT 이름, 점수
FROM 시험결과
WHERE 점수 = (
    SELECT MAX(점수)
    FROM 시험결과
    );

예시2

시험결과 테이블에 (반, 이름, 점수)가 있을 때, 1반의 최고 점수보다 높은 점수를 가진 2반의 이름, 점수를 가져오기

1
2
3
4
5
6
7
SELECT 이름, 점수
FROM 시험결과
WHERE  = '2' AND 점수 > (
    SELECT MAX(점수)
    FROM 시험결과
    WHERE  = '1'
);

복수 행 서브쿼리

  • 서브 쿼리의 결과가 여러 행이 나오는 쿼리

IN, ALL, ANY, SOME, EXISTS

WIP

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.
바로가기