카테고리:

반정형 및 정형 데이터 함수 (배열/오브젝트)

ARRAY_COMPACT

누락된 값과 null 값이 제거된 압축된 배열을 반환하여 희소 배열을 밀집 배열로 효과적으로 변환합니다.

구문

ARRAY_COMPACT( <array1> )
Copy

인자

array1

소스 배열입니다.

사용법 노트

  • 반정형 데이터(예: JSON 데이터)에는 SQL NULL과는 구별되는 명시적 null 값이 포함될 수 있습니다. 반정형 데이터에서 null 값은 누락된 값을 나타냅니다.

  • array1 은 ARRAY 데이터 타입이거나, 배열 값을 포함하는 VARIANT 데이터 타입이어야 합니다.

  • 인자가 NULL이면 결과는 NULL입니다.

  • 정형 ARRAY 를 함수에 전달하면 함수는 동일한 유형의 정형 ARRAY를 반환합니다.

이 예는 ARRAY_COMPACT() 사용 방법을 보여줍니다.

간단한 테이블과 데이터를 만듭니다.

CREATE TABLE array_demo (ID INTEGER, array1 ARRAY, array2 ARRAY);
Copy
INSERT INTO array_demo (ID, array1, array2) 
    SELECT 2, ARRAY_CONSTRUCT(10, NULL, 30), ARRAY_CONSTRUCT(40);
Copy

쿼리를 실행합니다.

SELECT array1, ARRAY_COMPACT(array1) FROM array_demo WHERE ID = 2;
+--------------+-----------------------+
| ARRAY1       | ARRAY_COMPACT(ARRAY1) |
|--------------+-----------------------|
| [            | [                     |
|   10,        |   10,                 |
|   undefined, |   30                  |
|   30         | ]                     |
| ]            |                       |
+--------------+-----------------------+
Copy