개발 & 데이터베이스/ORACLE

오라클 최대값, 최솟값 찾는 GREATEST, LEAST 함수 사용 및 주의사항

K.두부 2022. 11. 17. 22:50
반응형

오라클에서는 함수 내의 인자값 중에서 최대값, 최솟값을 찾을 수 있는 함수를 제공한다.

최대값과 최솟값을 구하는 함수로 MAX 와 MIN 함수가 생각날텐데 사용 방법이 조금 다르다.

 

MAX, MIN 은 검색 조건에 맞는 값 중에서 최대값, 최솟값을 찾는다.

GREATEST, LEAST 는 여러 개의 열(Column)에서 최대값, 최소값을 찾고, 숫자가 아닌 문자열도 비교가 가능하다.

 

 

GREATEST, LEAST  

SELECT GREATEST(100, 200, 300) AS GREATEST
     , LEAST(100, 200, 300) AS LEAST
FROM DUAL;  

// 300, 100

여러 개의 인자값에서 최대값, 최소값을 뽑아올 수 있다. 위 쿼리의 GREATEST에선 300, LEAST에선 100이 출력된다.

 

SELECT GREATEST('AAA', 'BBB', 'CCC') AS GREATEST
     , LEAST('AAA', 'BBB', 'CCC') AS LEAST
FROM DUAL;  

// CCC, AAA

 

숫자뿐만 아니라 문자열도 비교할 수 있다. 

 

SELECT GREATEST('AAA', '', 'CCC') AS GREATEST
     , LEAST('AAA', '', 'CCC') AS LEAST
FROM DUAL;  

// null, null

인자값에 null 값이 있다면 출력값은 무조건 null 이다.

 

 

반응형