그룹별 조건에 맞는 식당 목록 출력하기
https://school.programmers.co.kr/learn/courses/30/lessons/131124
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr

- REST_REVIEW에서 리뷰를 가장 많이 한 사람을 뽑아야 한다.
- 제일 처음에는 MAX로 할려했지만 리뷰를 제일 많이 한 사람이 여러명이라면 에러가 생긴다.
- 그러므로 RANK를 사용했다.
RANK()
- rank() : RANK 함수는 중복 값들에 대해서 동일 순위로 표시하고, 중복 순위 다음 값에 대해서는 중복 개수만큼 떨어진 순위로 출력하도록 하는 함수이다.
select R.member_id, m.member_name, rank() over(order by cnt desc) as ranking
- DENSE_RANK() : DENSE_RANK 함수는 중복 값들에 대해서 동일 순위로 표시하고, 중복 순위 다음 값에 대해서는 중복 값 개수와 상관없이 순차적인 순위 값을 출력하도록 하는 함수 입니다.
select R.member_id, m.member_name, dense_rank() over(order by cnt desc) as ranking
- ROW_NUMBER() : ROW_NUMBER 함수는 중복 값들에 대해서도 순차적인 순위를 표시하도록 출력하는 함수 입니다
select R.member_id, m.member_name, row_number() over(order by cnt desc) as ranking
답
select b.member_name, a.review_text, date_format(a.review_date, "%Y-%m-%d")
from rest_review as a
join(
select R.member_id, m.member_name, rank() over(order by cnt desc) as ranking
from (
select *, count(member_id) as cnt
from rest_review
group by member_id) as R
join member_profile as m on R.member_id = m.member_id) as b
on a.member_id = b.member_id
where b.ranking = 1
order by a.review_date
특정 기간동안 대여 가능한 자동차들의 대여비용 구하기
https://school.programmers.co.kr/learn/courses/30/lessons/157339
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
SELECT distinct a.car_id, a.car_type, round(a.DAILY_FEE*(1-(c.DISCOUNT_RATE / 100))*30) as FEE
from (select CAR_ID, car_type, DAILY_FEE
from CAR_RENTAL_COMPANY_CAR
where car_type = '세단' or car_type = 'SUV') as a
join (
select *
from CAR_RENTAL_COMPANY_DISCOUNT_PLAN
where duration_type = '30일 이상') as c
on c.car_type = a.car_type
where a.car_id not in(
select CAR_ID
from CAR_RENTAL_COMPANY_RENTAL_HISTORY
where END_DATE >= '2022-11-01'
and START_DATE < '2022-12-01') and
round(a.DAILY_FEE*(1-(c.DISCOUNT_RATE / 100))*30) between 500000 AND 1999999
order by FEE desc, a.car_type, a.car_id desc
'BackEnd > MySQL 문제 풀기' 카테고리의 다른 글
SQL 공부 (0) | 2023.03.25 |
---|---|
MySQL 문제출기(프로그래머스) (0) | 2023.03.12 |
SQL 고득점 kit5 (0) | 2023.02.10 |
SQL 고득점 Kit4 (0) | 2023.01.28 |
SQL 고득점 Kit3 (0) | 2023.01.23 |