[MySQL] programmers SQL 고득점 Kit: SUM, MAX, MIN

Jnary·2024년 1월 31일
0

Database

목록 보기
12/14
post-thumbnail

https://school.programmers.co.kr/learn/courses/30/parts/17043

Lv2. 가격이 제일 비싼 식품의 정보 출력하기

  • FOOD_PRODUCT 식품 정보 테이블
    • PRODUCT_ID 식품 ID
    • PRODUCT_NAME 식품 이름
    • PRODUCT_CD 식품 코드, NULL
    • CATEGORY 식품분류, NULL
    • PRICE 식품 가격, NULL
  • 문제
    • 제일 비싼 식품 → 가격 정렬 후 top1
  • 정답
    SELECT *
    FROM FOOD_PRODUCT
    ORDER BY PRICE desc
    LIMIT 1
    SELECT *
    FROM FOOD_PRODUCT
    WHERE PRICE = (SELECT MAX(PRICE)
    							FROM FOOD_PRODUCT)

LV1. 가장 비싼 상품 구하기

  • PRODUCT 의류 쇼핑몰에서 판매 중인 상품 정보 테이블
    • PRODUCT_ID 상품 ID
    • PRODUCT_CODE 상품코드
    • PRICE 판매가, 앞2자리:카테고리코드, pk
  • 문제
    • 가장 높은 판매가 출력
  • 정답
    SELECT PRICE as MAX_PRICE
    FROM PRODUCT
    ORDER BY PRICE desc
    LIMIT 1
    SELECT MAX(PRICE) as MAX_PRICE
    FROM PRODUCT

LV1. 최댓값 구하기

  • ANIMAL_INS 동물 보호소에 들어온 동물 정보 테이블
    • ANIMAL_ID 동물의 아이디
    • ANIMAL_TYPE 생물 종
    • DATETIME 보호 시작일, DATETIME
    • INTAKE_CONDITION 보호 시작 시 상태
    • NAME 이름, NULL
    • SEX_UPON_INTAKE 성별 및 중성화 여부
  • 문제
    • 가장 최근에 들어온 동물이 언제 들어왔는지 → DATETIME 최댓값
  • 정답
    SELECT MAX(DATETIME) as 시간
    FROM ANIMAL_INS

LV2. 최솟값 구하기

  • 문제
    • 가장 먼저 들어온 동물
  • 정답
    SELECT MIN(DATETIME) as 시간
    FROM ANIMAL_INS

LV2. 동물 수 구하기

  • 문제
    • 동물 몇 마리 들어왔는지 → count
  • 정답
    SELECT count(*) as count
    FROM ANIMAL_INS

LV2. 중복 제거하기

  • 문제
    • 중복 제거
      SELECT count(distinct Name)
    • NULL값 제거 → count(Name) 하면 알아서 제거
      WHERE Name is not null
  • 정답
profile
숭실대학교 컴퓨터학부 21

0개의 댓글