NVL 및 COALESCE 함수 - AWS Clean Rooms

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

NVL 및 COALESCE 함수

일련의 표현식에서 NULL이 아닌 첫 번째 표현식의 값을 반환합니다. NULL이 아닌 값이 발견되면 목록의 나머지 표현식은 평가되지 않습니다.

NVL은 COALESCE와 동일합니다. 이 둘은 동의어입니다. 이 항목에서는 구문을 설명하고 두 가지에 대한 예제를 모두 제공합니다.

명령문

NVL( expression, expression, ... )

COALESCE의 구문은 동일합니다.

COALESCE( expression, expression, ... )

모든 표현식이 NULL이면 결과는 NULL입니다.

이러한 함수는 기본 값이 없거나 NULL일 때 보조 값을 반환하려는 경우에 유용합니다. 예를 들어 쿼리는 사용 가능한 세 가지 전화번호(휴대폰, 집 또는 회사) 중 첫 번째 전화번호를 반환할 수 있습니다. 함수의 표현식 순서에 따라 평가 순서가 결정됩니다.

인수

expression

NULL 상태로 평가되는 표현식(열 이름 등)입니다.

반환 타입

AWS Clean Rooms 입력 표현식을 기반으로 반환된 값의 데이터 유형을 결정합니다. 입력 표현식의 데이터 유형에 공통 유형이 없는 경우 오류가 반환됩니다.

목록에 정수 표현식이 포함된 경우 함수는 정수를 반환합니다.

SELECT COALESCE(NULL, 12, NULL); coalesce -------------- 12

이 예는 NVL을 사용한다는 점을 제외하면 이전 예와 동일하며 동일한 결과를 반환합니다.

SELECT NVL(NULL, 12, NULL); coalesce -------------- 12

다음은 문자열 유형을 반환하는 예입니다.

SELECT COALESCE(NULL, 'AWS Clean Rooms', NULL); coalesce -------------- AWS Clean Rooms

다음 예에서는 표현식 목록에서 데이터 유형이 다양하기 때문에 오류가 발생합니다. 이 경우 목록에 문자열 유형과 숫자 유형이 모두 있습니다.

SELECT COALESCE(NULL, 'AWS Clean Rooms', 12); ERROR: invalid input syntax for integer: "AWS Clean Rooms"