Chef.Yeon
Code Cook
Chef.Yeon
전체 방문자
오늘
어제
  • 분류 전체보기 (230)
    • 게임 개발 (1)
      • Unity (1)
    • Android (27)
      • Kotlin (19)
      • 우아한테크코스 5기 (4)
    • Language (11)
      • 파이썬 (3)
      • Java (7)
    • DB (2)
      • SQL (16)
    • Spring (25)
    • 코딩테스트 (56)
    • Git (1)
    • TIL (85)
    • DevOps (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • enum
  • Wil
  • 코틀린
  • ec2
  • kibana
  • elasticsearch
  • java
  • 파이썬
  • 코딩테스트
  • SQL
  • 다이나믹 프로그래밍
  • grafana
  • 코틀린 인 액션
  • 안드로이드
  • 우아한테크코스
  • 백준
  • 문자열
  • Docker
  • 에라토스테네스의 체
  • rsocket
  • 프로그래머스
  • kotlin
  • 레포지토리
  • Android
  • MariaDB
  • til
  • 프리코스
  • 내림차순
  • spring
  • webflux

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Chef.Yeon

Code Cook

DB/SQL

[프로그래머스/SQL] 과일로 만든 아이스크림 고르기

2023. 3. 22. 03:16

문제 설명

다음은 아이스크림 가게의 상반기 주문 정보를 담은 FIRST_HALF 테이블과 아이스크림 성분에 대한 정보를 담은 ICECREAM_INFO 테이블입니다. FIRST_HALF 테이블 구조는 다음과 같으며, SHIPMENT_ID, FLAVOR, TOTAL_ORDER 는 각각 아이스크림 공장에서 아이스크림 가게까지의 출하 번호, 아이스크림 맛, 상반기 아이스크림 총주문량을 나타냅니다. FIRST_HALF 테이블의 기본 키는 FLAVOR입니다.

 

ICECREAM_INFO 테이블 구조는 다음과 같으며, FLAVOR, INGREDITENT_TYPE 은 각각 아이스크림 맛, 아이스크림의 성분 타입을 나타냅니다. INGREDIENT_TYPE에는 아이스크림의 주 성분이 설탕이면 sugar_based라고 입력되고, 아이스크림의 주 성분이 과일이면 fruit_based라고 입력됩니다. ICECREAM_INFO의 기본 키는 FLAVOR입니다. ICECREAM_INFO테이블의 FLAVOR는 FIRST_HALF 테이블의 FLAVOR의 외래 키입니다.


문제

상반기 아이스크림 총주문량이 3,000보다 높으면서 아이스크림의 주 성분이 과일인 아이스크림의 맛을 총주문량이 큰 순서대로 조회하는 SQL 문을 작성해주세요.


내 풀이

두 테이블을 FLAVOR 필드를 key로 LEFT JOIN 해줍니다.

WHERE 와 AND를 통해 총 주문량이 3000보다 크고, 주성분이 과일인 데이터를 뽑도록 조건을 걸어주었습니다.

총주문량이 큰 순서대로 조회하기 위해 ORDER BY를 통해 내림차순 정렬해줍니다.

SELECT f.FLAVOR FROM FIRST_HALF f
LEFT JOIN ICECREAM_INFO i ON f.FLAVOR = i.FLAVOR
WHERE f.TOTAL_ORDER > 3000
and i.INGREDIENT_TYPE = 'fruit_based'
ORDER BY i.INGREDIENT_TYPE DESC
728x90

'DB > SQL' 카테고리의 다른 글

[DB/SQL] UPPER/LOWER 대소문자 구문 없이 LIKE 사용하기  (0) 2023.03.22
[프로그래머스/SQL] 12세 이하인 여자 환자 목록 출력하기  (0) 2023.03.22
[프로그래머스/SQL] 서울에 위치한 식당 목록 출력하기  (0) 2023.03.22
[DB/SQL] CASE, WHEN, THEN, ELSE 사용하기  (0) 2023.03.21
[SQL] SUBSTRING_INDEX, SUBSTRING 문자열 데이터 다루기  (0) 2023.03.21
    'DB/SQL' 카테고리의 다른 글
    • [DB/SQL] UPPER/LOWER 대소문자 구문 없이 LIKE 사용하기
    • [프로그래머스/SQL] 12세 이하인 여자 환자 목록 출력하기
    • [프로그래머스/SQL] 서울에 위치한 식당 목록 출력하기
    • [DB/SQL] CASE, WHEN, THEN, ELSE 사용하기
    Chef.Yeon
    Chef.Yeon
    보기 좋고 깔끔한 코드를 요리하기 위해 노력하고 있습니다.

    티스토리툴바