다음을 통해 공유


[ ] (대괄호 기호) 연산자

적용 대상: 예(예)로 표시된 확인 Databricks SQL 예(예)로 표시된 확인 Databricks 런타임

인덱스 또는 키가 지정된 경우 배열 요소 또는 맵 값을 반환합니다.

구문

expr [ keyExpr ]

여기서 대괄호는 리터럴 텍스트로 사용되며 선택적 구문을 나타내지 않습니다.

인수

  • expr: ARRAY 또는 MAP 식입니다.
  • keyExpr: expr이 ARRAY이면 정수입니다. 그렇지 않으면 MAP의 키 형식과 일치하는 식입니다.

반품

결과 형식은 ARRAY의 요소 형식 또는 MAP의 값 형식입니다.

ARRAY의 첫 번째 요소는 인덱스 0에 있습니다.

keyExpr이 MAP expr Azure Databricks에 대한 유효한 키가 아니면 null을 반환합니다.

keyExpr이 ARRAY expr의 범위를 벗어나면 Azure Databricks에서 INVALID_ARRAY_INDEX 오류가 발생합니다.

참고 항목

Databricks Runtime에서 spark.sql.ansi.enabledfalse인 경우 연산자는 범위를 벗어난 오류 대신 NULL을 반환합니다.

예제

> SELECT a[2] FROM VALUES(array(10, 20, 30)) AS T(a);
  30

> SELECT m[1] FROM VALUES(map(1, 'Hello', 2, 'World')) AS T(m);
  Hello