지역별 주문의 특징 : solvesql

오유찬·2025년 12월 18일

SQL

목록 보기
22/71
SELECT
  region as Region,
  COUNT(DISTINCT CASE WHEN category='Furniture' THEN order_id END) as Furniture,
  COUNT(DISTINCT CASE WHEN category='Office Supplies' THEN order_id END) as 'Office Supplies',
  COUNT(DISTINCT CASE WHEN category='Technology' THEN order_id END) as Technology
FROM
  records
GROUP BY 
  region
ORDER BY
  region ASC;

count(*)로 주문 수를 확인하면, 단일 order_id에 여러 상품들이 있을 때 문제가 된다. 따라서 category에 CASE문을 걸 때, 반환값을 order_id로 하고 DISTINCT로 중복을 제거해야 한다.

profile
열심히 하면 재밌다

0개의 댓글