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 함수가 있고 이게 훨씬 가독성이 뛰어나다는 것을 알았다.