데이터 분석 기술 블로그

잡은 물고기 중 가장 큰 물고기의 길이 구하기 _ Lv1. 프로그래머스 * 본문

SQL/문제풀이

잡은 물고기 중 가장 큰 물고기의 길이 구하기 _ Lv1. 프로그래머스 *

데이터분석가 이채은 2024. 8. 24. 09:00

 

First Solution

SELECT CONCAT(LENGTH, 'cm') AS MAX_LENGTH
FROM FISH_INFO
WHERE LENGTH IS NOT NULL
ORDER BY LENGTH DESC
LIMIT 1;

 

제일 먼저 한 생각은 다음과 같다.

'NULL이 아닌 값을 제외하고 LENGTH를 내림차순으로 정렬했을 때 제일 위에 있는 게 최댓값이므로 LIMIT으로 하나의 값만 추출하고 그 값에 'cm'를 붙이고 열의 이름은 MAX_LENGTH로 하자.'

 

'cm'를 붙이는 방법은 CONCAT 함수를 사용하는 것이다. CONCAT 함수는 두 개 이상의 문자열을 하나의 문자열로 결합할 때 사용된다. 문자열 연결 함수라고도 한다.

 

결과 값은 틀리지 않았으나 뭔가 복잡해 보였다.


Second Solution

SELECT CONCAT(MAX(LENGTH), 'cm') AS MAX_LENGTH
FROM FISH_INFO
WHERE LENGTH IS NOT NULL;

 

Python, R, Java 등 여러 언어에서 MAX 함수를 지원하는 것을 알고 있다. SQL도 있지 않을까 해서 해 본 결과 MAX 함수가 있고 이게 훨씬 가독성이 뛰어나다는 것을 알았다.