[프로그래머스] 특정 조건을 만족하는 물고기별 수와 최대 길이 구하기

2024. 9. 19. 14:46·알고리즘/SQL

 

Question

 

FISH_INFO에서 평균 길이가 33cm 이상인 물고기들을 종류별로 분류하여 잡은 수, 최대 길이, 물고기의 종류를 출력하는 SQL문을 작성해주세요. 결과는 물고기 종류에 대해 오름차순으로 정렬해주시고, 10cm이하의 물고기들은 10cm로 취급하여 평균 길이를 구해주세요.
컬럼명은 물고기의 종류 'FISH_TYPE', 잡은 수 'FISH_COUNT', 최대 길이 'MAX_LENGTH'로 해주세요.

 

 

Pseudocode

 

 

  1. 집계 함수 사용
    • fish_info 테이블에서 fish_type 별로 집계합니다.
    • 각 fish_type 그룹에 대해:
      • 물고기의 총 개수를 계산합니다 (COUNT(*)).
      • 가장 긴 물고기의 길이를 찾습니다 (MAX(length)).
      • 그룹의 fish_type을 선택합니다.
  2. 조건부 평균 계산
    • 각 fish_type 그룹에서 길이가 10보다 큰 물고기의 길이와 그렇지 않은 경우 10을 사용하여 평균 길이를 계산합니다 (AVG(CASE WHEN length > 10 THEN length ELSE 10 END)).
    • 이 평균 길이가 33 이상인 그룹만 선택합니다 (HAVING 절).
  3. 정렬
    • 결과를 fish_type을 기준으로 오름차순으로 정렬합니다 (ORDER BY fish_type).
  4. 결과 출력
    • 각 그룹의 물고기 개수 (FISH_COUNT), 최대 길이 (MAX_LENGTH), 물고기 유형 (fish_type)을 출력합니다.

 

 

 

Code

 

SELECT Count(*)    FISH_COUNT,
       Max(length) MAX_LENGTH,
       fish_type
FROM   fish_info
GROUP  BY fish_type
HAVING Avg(CASE
             WHEN length > 10 THEN length
             ELSE 10
           end) >= 33
ORDER  BY fish_type

'알고리즘 > SQL' 카테고리의 다른 글

[프로그래머스] 업그레이드 할 수 없는 아이템 구하기  (0) 2024.09.19
[프로그래머스] 대장균들의 자식의 수 구하기  (0) 2024.09.19
[프로그래머스] 가장 큰 물고기 10마리 구하기  (0) 2024.09.19
[프로그래머스] 연간 평가점수에 해당하는 평가 등급 및 성과금 조회하기  (0) 2024.09.19
[프로그래머스] 그룹별 조건에 맞는 식당 목록 출력하기  (0) 2024.09.19
'알고리즘/SQL' 카테고리의 다른 글
  • [프로그래머스] 업그레이드 할 수 없는 아이템 구하기
  • [프로그래머스] 대장균들의 자식의 수 구하기
  • [프로그래머스] 가장 큰 물고기 10마리 구하기
  • [프로그래머스] 연간 평가점수에 해당하는 평가 등급 및 성과금 조회하기
Noaahhh
Noaahhh
  • Noaahhh
    노아
    Noaahhh
  • 전체
    오늘
    어제
    • 분류 전체보기 (118)
      • 프로젝트 (4)
      • 알고리즘 (113)
        • SQL (108)
        • CP (5)
      • 자격증 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    PS
    인증/인가
    JPQL
    atcoder beginner contest
    atcoder
    SQL문제
    ABC
    경쟁적프로그래밍
    querydsl
    OAuth2.0
    아픈 동물 찾기
    contest397
    프로그래머스
    abc421
    Spring
    코딩테스트
    springboot
    spingboot
    cp
    pasql
    카카오로그인
    contest395
    cp초보
    어린 동물 찾기
    PCSQL
    SQL
    소셜로그인
    JWT
    집계함수
    프로그래밍대회
  • hELLO· Designed By정상우.v4.10.5
Noaahhh
[프로그래머스] 특정 조건을 만족하는 물고기별 수와 최대 길이 구하기
상단으로

티스토리툴바