프로그래머스 SQL 문제 정리

이하루·2025년 1월 24일

한 유저가 동일한 상품을 재구매한 정보를 취득하는 방법

// HAVING절에서 2건 이상인 데이터만 필터링해서 출력
select USER_ID, PRODUCT_ID FROM ONLINE_SALE 
GROUP BY USER_ID, PRODUCT_ID
HAVING count(*) >= 2
ORDER BY USER_ID ASC, PRODUCT_ID DESC

리뷰가 한 건 이상 있는 서울에 있는 식당의 평균 평점 구하기

// 1대다 관계에서 1의 역할인 REST_INFO의 키를 기준으로 GROUP BY 후 평균 구하기
SELECT REST_INFO.REST_ID, REST_NAME, FOOD_TYPE, FAVORITES, ADDRESS, ROUND(AVG(REVIEW_SCORE),2) AS SCORE
FROM REST_INFO
INNER JOIN REST_REVIEW ON REST_REVIEW.REST_ID = REST_INFO.REST_ID
WHERE REST_INFO.ADDRESS LIKE '서울%'
GROUP BY REST_INFO.REST_ID
ORDER BY SCORE DESC, REST_INFO.FAVORITES DESC
profile
어제보다 더 나은 하루

0개의 댓글