서브쿼리(Subquery)

Taeha Kim·2020년 12월 4일
0

Database

목록 보기
8/8
post-thumbnail

서브쿼리(Subquery)

서브쿼리 개념 한줄 요약

SQL명령문 안에 SELECT 명령문이 괄호로 있는게 서브쿼리

서브쿼리 맛보기

WHERE구에서 서브쿼리 사용하기

이해를 위해서 아주 간단한 예를 들면

아래와 같은 테이블(table1)이 있을때, 서브쿼리를 사용하여 score가 가장 낮은 no를 찾는다면 다음과 같이 할 수 있습니다.

SELECT no FROM table1 WHERE score = (SELECT MIN(score) FROM table1);

실제로 MySQL에서 확인을 해보면

  • score가 최소값인 no찾기

    score는 10일때가 가장 작은값이고, 이때 no의 번호는 3번입니다.

SELECT구에서 서브쿼리 사용하기

table1과 table2가 다음과 같이 있을때,

tabl1 행의 개수와 table2 행의 개수를 조회해보면 다음과 같이 SELECT구 내부에 서브쿼리로 조회할 수 있습니다.

SELECT 
(SELECT COUNT(*) FROM table1) AS sql1, 
(SELECT COUNT(*) FROM table2) AS sql2;

중요

SELECT구에서 서브쿼리를 사용할때는 서브쿼리의 반환되는 값이 스칼라값이여야 합니다.

스칼라값: 여려 행이거나 여러 열이 아닌 단일 값

profile
함께 성장하는 개발자가 되고 싶습니다.

0개의 댓글