https://school.programmers.co.kr/learn/courses/30/lessons/293261
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
물고기 종류 별로 가장 큰 물고기의 ID, 물고기 이름, 길이를 출력하는 SQL 문을 작성해주세요.
물고기의 ID 컬럼명은 ID, 이름 컬럼명은 FISH_NAME, 길이 컬럼명은 LENGTH로 해주세요.
결과는 물고기의 ID에 대해 오름차순 정렬해주세요.
단, 물고기 종류별 가장 큰 물고기는 1마리만 있으며 10cm 이하의 물고기가 가장 큰 경우는 없습니다.
# FISH_TYPE을 키로 이너 조인하기
# WHERE 절 서브쿼리로 FISH_TYPE 별, LENGTH 가 가장 큰 행만 추출
SELECT FII.ID AS ID, FNI.FISH_NAME AS FISH_NAME, FII.LENGTH AS LENGTH
FROM FISH_INFO AS FII
INNER JOIN FISH_NAME_INFO AS FNI
ON FII.FISH_TYPE = FNI.FISH_TYPE
WHERE (FNI.FISH_TYPE, LENGTH) IN (SELECT FISH_TYPE, MAX(LENGTH)
FROM FISH_INFO
GROUP BY FISH_TYPE)
ORDER BY FII.ID ASC;
- where 절 다중열 서브쿼리 사용하여, FISH_TYPE, LENGTH 컬럼에서 FISH_TYPE별 LENGTH 가 가장 큰 행만 추출.
- 다중행 서브쿼리 : 서브쿼리 결과가 여러 행으로 나올 때 (컬럼은 각 하나에서)
IN, ANY, ALL 사용
- 다중컬럼 서브쿼리: 서브쿼리 결과가 여러 컬럼으로 나올 때
[오늘의 코드 44] [프로그래머스] 조건에 맞는 사원 정보 조회하기 (0) | 2024.05.07 |
---|---|
[오늘의 코드] 점프투파이썬 완독 (0) | 2024.05.06 |
[오늘의 코드 41] [프로그래머스] 업그레이드 된 아이템 구하기 (0) | 2024.05.06 |
[오늘의 코드 40] [프로그래머스] 연도 별 평균 미세먼지 농도 조회하기 (0) | 2024.05.02 |
[오늘의 코드 39] [프로그래머스] 2016년 (0) | 2024.02.17 |