LEAST 함수: 가장 작은 값 찾기

LEAST 함수는 SQL에서 여러 값 중에서 **가장 작은 값(최소값)**을 반환해. 숫자, 날짜, 문자열까지 비교할 수 있어서 다양하게 활용할 수 있어.
다만, NULL 값이 하나라도 있으면 결과는 NULL이 되기 때문에 주의해야 해!


문법

sql코드 복사SELECT LEAST(value1, value2, ..., valueN) AS min_value
FROM table_name;

1. 숫자 비교 예시

문제: 학생의 국어, 수학, 영어 점수 중에서 최저 점수를 구하라.

SELECT 
  name,
  LEAST(korean_score, math_score, english_score) AS lowest_score
FROM students;

결과

namekorean_scoremath_scoreenglish_scorelowest_score
홍길동85908885
김영희75809575
이철수65607060

2. 날짜 비교 예시

문제: 프로젝트 시작일, 종료일, 업데이트 날짜 중 가장 빠른 날짜를 구하라.

SELECT 
  project_name,
  LEAST(start_date, end_date, updated_date) AS earliest_date
FROM projects;

결과

project_namestart_dateend_dateupdated_dateearliest_date
프로젝트12024-06-012024-06-152024-06-202024-06-01
프로젝트22024-05-102024-06-052024-05-252024-05-10

3. 문자열 비교 예시

문제: 문자열 중 알파벳 순서에서 가장 앞에 오는 단어를 구하라.

SELECT 
  LEAST('apple', 'banana', 'grape') AS first_word;

결과

first_word
apple
  • 설명: 문자열은 알파벳 순서(ASCII 코드 순서)로 비교해.

4. NULL 처리 주의사항

만약 값 중 하나라도 NULL이 존재하면 결과는 NULL이 돼. 이를 피하기 위해 COALESCE를 사용해서 NULL 값을 다른 값으로 대체해줘.

문제: NULL 값이 있을 때 최소값 구하기

SELECT 
  LEAST(COALESCE(score1, 0), COALESCE(score2, 0), COALESCE(score3, 0)) AS min_score
FROM students;
  • COALESCE 함수는 NULL 값을 0으로 바꿔주기 때문에 결과가 정상적으로 반환돼.

정리

  • 숫자, 날짜, 문자열 모두에서 최소값을 찾을 수 있어.
  • NULL 값이 포함되면 결과는 NULL이므로 필요시 COALESCE와 함께 사용하면 좋아.
  • 여러 조건을 한 번에 비교해야 할 때 LEAST는 깔끔하고 직관적이야.

이제 LEAST 함수를 잘 활용해서 최소값을 쉽게 찾아보자! 🚀


게시됨

카테고리

작성자

댓글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다