코딩테스트/SQL
[MySQL] 조건에 맞는 사용자와 총 거래금액 조회하기
rlatotquf45
2024. 10. 6. 13:56
728x90
반응형
문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/164668문제 요약
두 개의 테이블인 USED_GOODS_BOARD와 USED_GOODS_USER를 사용하여 완료된 중고 거래의 총금액이 70만 원 이상인 사람의 회원 ID, 닉네임, 총거래금액을 조회하는 SQL 쿼리를 작성하는 것.
세부 조건:
- USED_GOODS_BOARD 테이블에서 STATUS 컬럼이 '완료' 상태인 거래만 포함합니다.
- USED_GOODS_BOARD의 WRITER_ID는 USED_GOODS_USER의 USER_ID와 연결됩니다.
- 결과는 총거래금액이 70만 원 이상인 사람만 조회합니다.
- 결과는 총거래금액을 기준으로 오름차순으로 정렬해야 합니다.
필요한 컬럼:
- 회원 ID (USED_GOODS_USER.USER_ID)
- 닉네임 (USED_GOODS_USER.NICKNAME)
- 총 거래 금액 (SUM(USED_GOODS_BOARD.PRICE))
풀이 방법
이 문제는 두 테이블을 JOIN하여 거래 상태가 완료된 경우에 대한 총 금액을 계산하고, 그 금액이 70만 원 이상인 사용자만 조회하는 쿼리를 요구합니다.
정답 코드
SELECT user_id, nickname, sum(price) as total_sales
from used_goods_board as b
join used_goods_user as u
on b.writer_id = u.user_id and b.status = 'done'
group by writer_id
having sum(price)>=700000
order by total_sales asc
728x90
반응형