카테고리:

조건식 함수

GREATEST_IGNORE_NULLS

식 목록에서 가장 큰 NULL이 아닌 값을 반환합니다. GREATEST_IGNORE_NULLS는 VARIANT를 포함하여 모든 데이터 타입을 지원합니다.

참고 항목:

GREATEST

구문

GREATEST_IGNORE_NULLS( <expr1> [ , <expr2> ... ] )
Copy

인자

exprN

인자는 하나 이상의 식을 포함해야 합니다. 모든 식은 동일한 형식이거나 호환 가능한 형식이어야 합니다.

반환

첫 번째 인자는 반환 형식을 결정합니다.

  • 첫 번째 형식이 숫자인 경우, 모든 인자 목록의 숫자 형식에 따라 반환 형식이 ‘확장’됩니다.

  • 첫 번째 형식이 숫자가 아닌 경우, 다른 모든 인자는 첫 번째 형식으로 변환할 수 있어야 합니다.

모든 인자가 NULL이면 NULL을 반환합니다.

데이터 정렬 세부 정보

  • The collation specifications of all input arguments must be compatible.

  • The comparisons follow the collation based on the input arguments’ collations and precedences.

  • The collation of the result of the function is the highest-precedence collation of the inputs.

테이블을 만들고 일부 값을 삽입합니다.

CREATE TABLE test_greatest_ignore_nulls (
  col_1 INTEGER,
  col_2 INTEGER,
  col_3 INTEGER,
  col_4 FLOAT);

INSERT INTO test_greatest_ignore_nulls (col_1, col_2, col_3, col_4) VALUES
  (1, 2,    3,  4.25),
  (2, 4,   -1,  NULL),
  (3, 6, NULL,  -2.75);
Copy

테이블의 각 행에서 null이 아닌 가장 큰 값을 반환하는 SELECT 문을 실행합니다.

SELECT col_1,
       col_2,
       col_3,
       col_4,
       GREATEST_IGNORE_NULLS(col_1, col_2, col_3, col_4) AS greatest_ignore_nulls
 FROM test_greatest_ignore_nulls
 ORDER BY col_1;
Copy
+-------+-------+-------+-------+-----------------------+
| COL_1 | COL_2 | COL_3 | COL_4 | GREATEST_IGNORE_NULLS |
|-------+-------+-------+-------+-----------------------|
|     1 |     2 |     3 |  4.25 |                  4.25 |
|     2 |     4 |    -1 |  NULL |                  4    |
|     3 |     6 |  NULL | -2.75 |                  6    |
+-------+-------+-------+-------+-----------------------+