[프로그래머스 Lv4.] 131117번 5월 식품들의 총매출 조회하기 (ORACLE)

2024. 2. 8. 08:22·Coding Test/SQL 고득점 Kit[ORACLE]

문제 설명

다음은 식품의 정보를 담은 FOOD_PRODUCT 테이블과 식품의 주문 정보를 담은 FOOD_ORDER 테이블입니다. FOOD_PRODUCT 테이블은 다음과 같으며 PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE는 식품 ID, 식품 이름, 식품코드, 식품분류, 식품 가격을 의미합니다.

Column name Type Nullable
PRODUCT_ID VARCHAR(10) FALSE
PRODUCT_NAME VARCHAR(50) FALSE
PRODUCT_CD VARCHAR(10) TRUE
CATEGORY VARCHAR(10) TRUE
PRICE NUMBER TRUE

 

FOOD_ORDER 테이블은 다음과 같으며 ORDER_ID, PRODUCT_ID, AMOUNT, PRODUCE_DATE, IN_DATE, OUT_DATE, FACTORY_ID, WAREHOUSE_ID는 각각 주문 ID, 제품 ID, 주문량, 생산일자, 입고일자, 출고일자, 공장 ID, 창고 ID를 의미합니다.

Column name Type Nullable
ORDER_ID VARCHAR(10) FALSE
PRODUCT_ID VARCHAR(5) FALSE
AMOUNT NUMBER FALSE
PRODUCE_DATE DATE TRUE
IN_DATE DATE TRUE
OUT_DATE DATE TRUE
FACTORY_ID VARCHAR(10) FALSE
WAREHOUSE_ID VARCHAR(10) FALSE

문제

FOOD_PRODUCT와 FOOD_ORDER 테이블에서 생산일자가 2022년 5월인 식품들의 식품 ID, 식품 이름, 총매출을 조회하는 SQL문을 작성해주세요. 이때 결과는 총매출을 기준으로 내림차순 정렬해주시고 총매출이 같다면 식품 ID를 기준으로 오름차순 정렬해주세요.


예시

FOOD_PRODUCT 테이블이 다음과 같고

PRODUCT_ID  PRODUCT_NAME PRODUCT_CD CATEGORY PRICE
P0011 맛있는콩기름 CD_OL00001 식용유 4880
P0012 맛있는올리브유 CD_OL00002 식용유 7200
P0013 맛있는포도씨유 CD_OL00003 식용유 5950
P0014 맛있는마조유 CD_OL00004 식용유 8950
P0015 맛있는화조유 CD_OL00005 식용유 8800
P0016 맛있는참기름 CD_OL00006 식용유 7100
P0017 맛있는들기름 CD_OL00007 식용유 7900
P0018 맛있는고추기름 CD_OL00008 식용유 6100
P0019 맛있는카놀라유 CD_OL00009 식용유 5100
P0020 맛있는산초유 CD_OL00010 식용유 6500

 

FOOD_ORDER 테이블이 다음과 같을 때

ORDER_ID PRODUCT_ID AMOUNT  PRODUCE_DATE IN_DATE  OUT_DATE  FACTORY_ID WAREHOUSE_ID
OD00000056 P0012 1000 2022-04-04 2022-04-21 2022-04-25 FT19980002 WH0032
OD00000057 P0014 2500 2022-04-14 2022-04-27 2022-05-01 FT19980002 WH0033
OD00000058 P0017 1200 2022-05-19 2022-05-28 2022-05-28 FT20070002 WH0033
OD00000059 P0017 1000 2022-05-24 2022-05-30 2022-05-30 FT20070002 WH0038
OD00000060 P0019 2000 2022-05-29 2022-06-08 2022-06-08 FT20070002 WH0035

 

SQL을 실행하면 다음과 같이 출력되어야 합니다.

PRODUCT_ID PRODUCT_NAME  TOTAL_SALES
P0017 맛있는들기름 17380000
P0019 맛있는카놀라유 10200000

-- 코드를 입력하세요
SELECT
    P.PRODUCT_ID
    , P.PRODUCT_NAME
    , SUM(O.AMOUNT * P.PRICE) AS TOTAL_SALES
FROM FOOD_PRODUCT P
    INNER JOIN FOOD_ORDER O
    ON P.PRODUCT_ID = O.PRODUCT_ID
    WHERE TO_CHAR(O.PRODUCE_DATE, 'YYYYMM') = '202205'
GROUP BY P.PRODUCT_ID, P.PRODUCT_NAME
ORDER BY TOTAL_SALES DESC, P.PRODUCT_ID;
저작자표시 비영리 변경금지 (새창열림)

'Coding Test > SQL 고득점 Kit[ORACLE]' 카테고리의 다른 글

[프로그래머스 Lv4.] 131124번 그룹별 조건에 맞는 식당 목록 출력하기 (ORACLE)  (1) 2024.02.08
[프로그래머스 Lv2.] 144854번 조건에 맞는 도서와 저자 리스트 출력하기 (ORACLE)  (0) 2024.02.08
[프로그래머스 Lv4.] 157339번 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기 (ORACLE)  (0) 2024.02.08
[프로그래머스 Lv4.] 133027번 주문량이 많은 아이스크림들 조회하기 (ORACLE)  (0) 2024.02.08
[프로그래머스 Lv2.] 131529번 카테고리 별 상품 개수 구하기 (ORACLE)  (0) 2024.02.08
'Coding Test/SQL 고득점 Kit[ORACLE]' 카테고리의 다른 글
  • [프로그래머스 Lv4.] 131124번 그룹별 조건에 맞는 식당 목록 출력하기 (ORACLE)
  • [프로그래머스 Lv2.] 144854번 조건에 맞는 도서와 저자 리스트 출력하기 (ORACLE)
  • [프로그래머스 Lv4.] 157339번 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기 (ORACLE)
  • [프로그래머스 Lv4.] 133027번 주문량이 많은 아이스크림들 조회하기 (ORACLE)
woojin._.
woojin._.
여러가지 개발을 해보며 발생하는 이야기들에 대한 블로그입니다:)
  • woojin._.
    Jin's Dev Story
    woojin._.
  • 전체
    오늘
    어제
    • 분류 전체보기 (829)
      • Tools (25)
        • eGovFrame (3)
        • GeoServer (3)
        • QGIS (2)
        • LabelImg (2)
        • Git (6)
        • GitHub (1)
        • Eclipse (7)
        • Visual Studio (1)
      • Web & Android (121)
        • SpringBoot (37)
        • Three.js (2)
        • Spring Data JPA (9)
        • 스프링 부트 쇼핑몰 프로젝트 with JPA (25)
        • Thymeleaf (4)
        • Spring Security (15)
        • Flutter (29)
      • Programming Language (61)
        • JAVA (27)
        • JavaScript (14)
        • Dart (2)
        • Python (15)
        • PHP (3)
      • Database (43)
        • PostgreSQL (32)
        • MYSQL (7)
        • Oracle (3)
        • MSSQL (1)
      • SERVER (17)
        • TCP_IP (3)
        • 리눅스 (7)
        • AWS (7)
      • Coding Test (445)
        • 백준[JAVA] (108)
        • 프로그래머스[JAVA] (260)
        • 알고리즘 고득점 Kit[JAVA] (3)
        • SQL 고득점 Kit[ORACLE] (74)
      • CS 지식 (49)
        • [자료구조] (14)
        • [네트워크] (12)
        • [데이터베이스] (10)
        • [알고리즘] (9)
        • [운영체제] (4)
      • 기타 (6)
      • 자격증 & 공부 (62)
        • 정보처리기사 (2)
        • SQLD (6)
        • 네트워크관리사 2급 (5)
        • 리눅스마스터 1급 (44)
        • 리눅스마스터 2급 (1)
        • ISTQB (3)
        • 시스템보안 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 인기 글

  • 태그

    CS지식
    리눅스마스터
    플러터
    시큐리티
    Linux
    CS
    postgresql
    스프링 부트 쇼핑몰 프로젝트 with JPA
    자바
    JPA
    DB
    스프링
    springboot
    백준
    programmers
    pcce 기출문제
    Java
    Flutter
    스프링부트
    Spring Security
    Oracle
    데이터
    baekjoon
    데이터베이스
    리눅스마스터 1급
    python
    리눅스
    backjoon
    spring
    프로그래머스
  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
woojin._.
[프로그래머스 Lv4.] 131117번 5월 식품들의 총매출 조회하기 (ORACLE)
상단으로

티스토리툴바