1. 문제 풀이 아이디어
- 테이블을 결합하고 필요한 데이터를 필터링한 후, 그룹화와 집계를 수행한다.
- 이후 집계 결과를 기준으로 다시 필터링하고 정렬하여 문제를 해결한다.
2. 나의 정답 코드
SELECT
u.user_id,
u.nickname,
SUM(b.price) AS total_sales
FROM
used_goods_board b
JOIN
used_goods_user u
ON
b.writer_id = u.user_id
WHERE
b.status = 'done'
GROUP BY
u.user_id
HAVING
total_sales >= 700000
ORDER BY
total_sales;3. 정리
- JOIN 절을 사용해
used_goods_user테이블과used_goods_board테이블을 결합한다.
- WHERE 절에서
status가done인 데이터를 필터링한다.
- GROUP BY 절로
user_id를 기준으로 그룹화한 뒤,SUM집계함수를 사용해price의 총합을 구하고total_sales라는 별칭을 부여한다.
- HAVING 절에서
total_sales가 70만 이상인 데이터를 필터링한다.
- ORDER BY 절에서
total_sales를 기준으로 오름차순 정렬한다.
Share article