posexplode_outer테이블 값 생성기 함수(Databricks SQL)

의미 체계를 사용하여 위치 번호 매기기를 사용하여 배열의 중첩을 해제하여 행을 OUTER 반환합니다.

구문

posexplode_outer(expr)

인수

  • expr: ARRAY 또는 MAP 식입니다.

반환

select 목록의 다른 식, 배열 또는 map의 요소 위치, 배열의 요소 또는 map의 키와 값으로 구성된 행 집합입니다.

exprNULL 이면 배열 또는 맵 값에 대한 NUL이 있는 단일 행입니다.

배열의 에 의해 생성된 열의 posexplode_outer 이름은 pos 기본적으로 및 col 이지만 별칭이 지정될 수 있습니다. 와 같은 별칭 튜플을 사용하여 별칭을 지정할 수도 AS (myPos, myValue) 있습니다.

맵의 열은 기본적으로 , 및 라고 poskeyvalue 합니다. 와 같은 별칭 튜플을 사용하여 별칭을 지정할 수도 AS (myPos, myKey, myValue) 있습니다.

posexplode_outer선택 목록 또는 에만 배치할 수 LATERAL VIEW 있습니다. 함수를 select 목록에 배치하는 경우 동일한 선택 목록에 다른 생성기 함수가 없어야 합니다.

> SELECT posexplode_outer(array(10, 20)) AS elem, 'Spark';
 0  10 Spark
 1  20 Spark
> SELECT posexplode_outer(map(1, 'a', 2, 'b')) AS (num, val), 'Spark';
 0  1   a   Spark
 1  2   b   Spark
> SELECT posexplode_outer(cast(NULL AS array<int>)), 'Spark';
 NULL   Spark