[SQL] 자동차 대여 기록 별 금액 구하기
·
알고리즘/SQL
문제 유형SQLString, Date 문제 난이도LEV4 문제 분석문제에서 주어진 조건은 자동차 종류가 '트럭'인 자동차의 대여 기록에 대해서 대여 기록 별로 대여 금액(FEE)을 구하여 대여 기록 ID와 대여 금액 리스트를 출력하는 문제이다.구하고자 하는 칼럼: 대역 기록에 대하여 대여 기록 별로 대여 금액(FEE)정렬 조건: FEE DESC, HISTORY_ID DESC우선 문제에서 KEY Point는1. 대여 기간에 따른 할인율을 적용시켜 대여 금액을 구할 수 있는가? (DATEDIFF, CASE WHEN 절 활용)2. JOIN을 적절하게 활용할 수 있는가? 코드 분석 CTE 절부터 확인해보자. 우선 CAR_RENTAL_COMPANY_CAR 와 CAR_RENTAL_COMPANY_RENTAL_HIST..
[SQL] 그룹별 조건에 맞는 식당 목록 출력하기
·
알고리즘/SQL
https://school.programmers.co.kr/learn/courses/30/lessons/131124 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 유형SQLJOIN문제 난이도LEV4 문제 분석두 개의 테이블이 주어진다.MEMBER_PROFILE: 고객의 정보REST_REVIEW: 식당의 리뷰 정보구하고자 하는 SQL- 리뷰를 가장 많이 작성한 회원들의 리뷰들을 조회- 회원 이름, 리뷰 텍스트, 리뷰 작성일- 리뷰 작성일을 기준으로 오름차순, 리뷰 텍스트 기준으놀 오름차순두 개의 CTE(Common Table Expression)를 활용해서 가장 많은 리뷰의 MEMER_ID를 구하고, 해당하..
[SQL] 5월 식품들의 총매출 조회하기
·
알고리즘/SQL
https://school.programmers.co.kr/learn/courses/30/lessons/131117 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 유형SQLJOIN문제 난이도Lev4 문제 분석문제에서 구하고자 하는 조건1. 생산일자가 2022년 5월인 식품들2. 총 매출 조회3. 총매출을 기준으로 내림차순 정렬, 총매출이 같다면 식품ID를 기준으로 오름차순 정렬생산일자 필터링1. YEAR(B.PRODUCE_DATE) = '2022' AND MONTH(B.PRODUCE_DATE) = '05'총 매출 조회1. FOOD_PRODUCT, FOOD_ORDER 를 INNER JOIN 한 이후에, 주문..
[SQL] 노선별 평균 역 사이 거리 조회하기
·
알고리즘/SQL
https://school.programmers.co.kr/learn/courses/30/lessons/284531#qna 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 유형SQLGROUP BY문제 난이도Lev2 문제 분석서울 지하철 2호선의 역 간 거리 정보를 담은 테이블이 주어진다.여기서 노선별로 노선, 총 누계 거리, 평균 역 사이 거리를 조회하면 된다.총 누계 거리 = 테이블 내 존재하는 역들의 역 사이 거리의 총 합을 뜻한다.총 누계 거리: TOTAL_DISTANCE평균 역 사이 거리 AVERAGE_DISTANCE총 누계 거리는 소수 둘째 자리에서, 평균 역 사이 거리는 소수 셋째 자리에서 반올림..
[SQL] 조건에 맞는 사원 정보 조회하기
·
알고리즘/SQL
WTIH SUM_SCORE AS ( SELECT EMP_NO ,SUM(SCORE) AS SCORE FROM HR_GRADE GROUP BY EMP_NO), RANKING AS ( SELECT EMP_NO , SCORE , DENSE_RANK() OVER (ORDER BY SCORE DESC) AS DR FROM SUM_SCORE)SELECT RK.SCORE , RK.EMP_NO , HE.EMP_NAME , HE.POSITION , HE.EMAILFROM HR_EMPLOYEES HE INNER JOIN RANKING RK ON HE.EMP_NO = RK.EMP_NOWHERE RK.DR = 1;