코드잇/데이터베이스

SQL 서브쿼리 종류

양상추상츄 2023. 2. 26. 18:39

*서브쿼리

 

1)  SELECT절에서 서브쿼리 사용(스칼라 서브쿼리)

- price 컬럼 옆에 평균 price를 붙여서 비교하면서 볼 수 있도록함

SELECT
    id,
    name,
    price,
    (SELECT AVG(price) FROM item) AS avg_price
FROM copang_main.item;

 

2)  WHERE절에서 서브쿼리 사용(중첩쿼리)

- item 테이블에서 최소가격인 항목만 보여준다.

SELECT id, name, price
FROM item
WHERE price = (SELECT MIN(price) FROM item);

3)  FROM절에서 서브쿼리 사용(인라인뷰)

- 리뷰 테이블에서 item_id를 GROUP BY 했을때 리뷰수가 3개 이상인 item_id를 가져온다.

  그 item_id를 바탕으로 item 테이블에서 매치되는 item_id의 모든 내용을 가져옴

- IN이 있으면 그뒤에 하나라도 만족하는 값이 있으면 TRUE를 리턴한다.

SELECT * FROM item
WHERE id IN
(
SELECT item_id
FROM review
GROUP BY item_id HAVING COUNT(*) >= 3
);

'코드잇 > 데이터베이스' 카테고리의 다른 글

SQL VIEW  (0) 2023.03.05
SQL 서브쿼리 실습  (0) 2023.03.04
SQL 여러 테이블 조인  (0) 2023.02.20
SQL COALESCE, JOIN, USING, UNION  (0) 2023.02.18
SQL Foreign Key  (0) 2023.02.12