기록하고 까먹지 말기

(SQL) 5월 식품들의 총매출 조회하기 본문

전공/프로그래머스

(SQL) 5월 식품들의 총매출 조회하기

yha97 2023. 10. 4. 21:43

날짜 : 2023. 10. 04

사용 언어 : oracle

 

문제

https://school.programmers.co.kr/learn/courses/30/lessons/131117?language=oracle

 

코드

-- 생산일자가 2022년 5월인 식품들의 식품 ID, 식품 이름, 총매출을 조회
-- 결과는 총매출을 기준으로 내림차순 정렬
-- 총매출이 같다면 식품 ID를 기준으로 오름차순 정렬
select a.product_id, a.product_name, a.price * b.total_amount as total_sales
from food_product a
join (
    select product_id, sum(amount) as total_amount
    from food_order
    where to_char(produce_date, 'yyyymm') = '202205'
    group by product_id
) b on a.product_id = b.product_id
order by total_sales desc, a.product_id
;

 

 

풀이

- 상품정보를 담은 테이블을 a로 놓고, 2022년 5월에 생산된 제품들 중 상품 id와 각 상품별 생산량의 합을 구한 서브쿼리를 b로 설정한 다음 a와 b를 조인한다.

- 그 다음 상품 id, 상품명, 매출액(상품 가격 * 총 생산량)을 구한 다음 조건에 맞게 정렬한다.

 

 

알게된 점

- 이전에 풀었던 문제였고 이번에는 오라클로 풀이했다.

 

 

참고 사이트

 

'전공 > 프로그래머스' 카테고리의 다른 글

무인도 여행  (0) 2023.10.06
쿼드압축 후 개수 세기  (0) 2023.10.05
삼각 달팽이  (0) 2023.10.03
정수 삼각형  (0) 2023.10.03
(SQL) 식품분류별 가장 비싼 식품의 정보 조회하기  (0) 2023.10.03