Notice
Recent Posts
Recent Comments
Link
CodeClover
[프로그래머스 / SQL] 잡은 물고기 중 가장 큰 물고기의 길이 구하기 _MYSQL 본문
https://school.programmers.co.kr/learn/courses/30/lessons/298515?language=mysql
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr

이 문제의 POINT는 문자열을 붙여서 새로운 가상의 컬럼을 만들어내는것이다.
[정답코드]
SELECT
CONCAT( MAX(LENGTH),'cm') AS MAX_LENGTH
FROM FISH_INFO;
CONCAT( )함수란?
CONCAT() 함수는 SQL에서 여러 문자열을 하나로 결합하여 새로운 값을 생성하는 SQL 함수이다.
즉, 주어진 모든 값을 순서대로 연결해 하나의 문자열으로 만들어주는 함수이다. 값 사이에 ,(콤마)를 여러개 넣으면 각각의 값을 그대로 연결해서 출력한다.
CONCAT( )함수 주요 특징
- 콤마로 구분: CONCAT()는 각 인수를 하나씩 처리하며, 문자열, 숫자, 혹은 기타 값을 모두 문자열로 변환하여 연결합니다.
- 값 순서 유지: 지정된 순서대로 값을 결합합니다.
- 산술 계산 아님: CONCAT()는 문자열 연결만 수행하며, 숫자 데이터를 처리할 경우 문자열로 변환하여 연결한다.
- NULL 처리 주의: 하나라도 NULL이면 결과 전체가 NULL이 됩니다.
- 만약 구분자가 필요하다면 CONCAT_WS() 함수가 더 적합할 수 있습니다. CONCAT_WS() 함수는 구분자를 사용하며, NULL 값을 무시한다.
[예제코드01]
SELECT
CONCAT(first_name, ' ', last_name) AS full_name
FROM
employees;
위 예제코드를 보면 CONCAT()함수는 first_name과 last_name을 공백으로 연결해서 새 문자열을 생성한다.
[예제코드02]
SELECT
CONCAT(MAX(length), 'cm', ', ', '최대 길이') AS max_length_description
FROM
items;
위 예제코드를 보면 MAX(length)의 결과와 'cm', ', ', 그리고 '최대 길이'를 순서대로 연결된다.
[결과]
"123cm, 최대 길이"
'코딩테스트' 카테고리의 다른 글
[JAVA_백준 10814] 나이순 정렬 (1) | 2025.01.07 |
---|---|
[JAVA_백준 2309] 일곱 난쟁이 (0) | 2025.01.06 |
[프로그래머스 / SQL] GROUP BY문제 (입양 시각 구하기(1))_oracle (1) | 2024.08.03 |
[프로그래머스 / SQL] GROUP BY문제 (조건에 맞는 사용자와 총 거래금액 조회하기) (1) | 2024.08.03 |
[백준 / JAVA] 9498번 (시험 성적) (2) | 2024.06.02 |