Open Source RDBMS - Seamless, Scalable, Stable and Free

한국어 | Login |Register

Versions available for this page: CUBRID 8.2.1 |  CUBRID 8.3.0 |  CUBRID 8.3.1 |  CUBRID 8.4.0 |  CUBRID 8.4.1 |  CUBRID 8.4.3 |  CUBRID 9.0.0 | 

MAX 함수

설명

MAX 함수는 모든 행에 대하여 연산식 값 중 최대 값을 구한다. 하나의 연산식 expression만 인자로 지정된다. 문자열을 반환하는 연산식에 대해서는 사전 순서를 기준으로 뒤에 나오는 문자열이 최대 값이 되고, 수치를 반환하는 연산식에 대해서는 크기가 가장 큰 값이 최대 값이다.

분석 함수에 대한 예제는 아래의 분석 함수 예제를 참고한다. 분석 함수에 대한 자세한 내용은 개요를 참고한다.

구문

MAX ( [ { DISTINCT | DISTINCTROW } | UNIQUE | ALL ] expression )

  • expression : 수치 또는 문자열을 반환하는 하나의 연산식을 지정한다. 컬렉션 타입의 데이터를 반환하는 연산식은 지정할 수 없다.
  • ALL : 모든 값에 대해 최대 값을 구하기 위해 사용되며, 기본값이다.
  • DISTINCT 또는 UNIQUE : 중복이 제거된 유일한 값에 대해서 최대 값을 구하기 위해 사용된다.
집계 함수 예제

다음은 올림픽 대회 중 한국이 획득한 최대 금메달의 수를 반환하는 예제이다.

SELECT MAX(gold) FROM participant WHERE nation_code = 'KOR';

    max(gold)

=============

           12

분석 함수 예제

다음은 역대 올림픽 대회 중 국가 코드와 연도 순대로 nation_code가 'AU'로 시작하는 국가가 획득한 금메달 수와 해당 국가의 역대 최대 금메달의 수를 같이 출력하는 예제이다.

SELECT host_year, nation_code, gold,

MAX(gold) OVER (PARTITION BY nation_code) mx_gold

FROM participant WHERE nation_code like 'AU%' ORDER BY nation_code, host_year;

 

    host_year  nation_code                  gold      mx_gold

=============================================================

         1988  'AUS'                           3           17

         1992  'AUS'                           7           17

         1996  'AUS'                           9           17

         2000  'AUS'                          16           17

         2004  'AUS'                          17           17

         1988  'AUT'                           1            2

         1992  'AUT'                           0            2

         1996  'AUT'                           0            2

         2000  'AUT'                           2            2

         2004  'AUT'                           2            2