MySQL 서브쿼리(subquery)와 예제

2023. 12. 18. 14:11Database/MySQL

728x90
반응형

 

 

 

 

주어진 데이터는 아래와 같습니다.

 

select *
from books;

 

 

 


  • 서브쿼리

서브 쿼리는 다른 쿼리 내부에 포함되어 있는 select 문을 의미합니다. 

서브 쿼리는 반드시 괄호()로 감싸져 있어야 하며,

MySQL에서 서브쿼리에 포함할 수 있는 외부 쿼리는 select, insert, update, delete 문 등이 있습니다.

 

 

1. 예제

 

-- 페이지수가 가장 긴 책의 제목과 페이지수를 보여주세요

 

방법 1번

select title, pages
from books
order by pages desc
limit 0, 1;

 

 

방법 2번(서브쿼리 사용)

 

select max(pages)
from books;

select title, pages
from books
where pages = (select max(pages) from books);

 

 

 


2. 서브쿼리 작성 방법 

 

 

-- stock_quantity가 가장 적은 책의 책 제목, 작가 fname, 페이지 수를 보여주세요

 

 

순서 1

 

select min(stock_quantity) 
from books;

 

 

순서 2

 

select *
from books
where stock_quantity = (select min(stock_quantity) from books);

 

 

순서 3

 

select title, author_fname, pages
from books
where stock_quantity = (select min(stock_quantity) from books);

 

 

 

728x90
반응형