배열을 사용하여 맵 만들기 - Amazon Athena

배열을 사용하여 맵 만들기

맵(Maps)은 Athena에서 사용할 수 있는 데이터 형식으로 구성된 키 값 페어입니다. 맵을 만들려면 MAP 연산자를 사용하고, 그리로 두 개의 배열을 전달합니다. 첫 번째는 열(키) 이름이고 두 번째는 값입니다. 배열의 모든 값은 같은 형식이어야 합니다. 맵 값 배열 요소 중 일부가 다른 형식이어야 하는 경우, 나중에 변환하면 됩니다.

예제

이 예제는 데이터 세트에서 사용자를 선택합니다. MAP 연산자를 사용하고 그리로 두 개의 배열을 전달합니다. 첫 번째 배열에는 "first", "last" 및 "age"와 같은 열 이름 값이 포함됩니다. 두 번째 배열은 "Bob", "Smith", "35"와 같은 각 열의 값으로 구성됩니다.

WITH dataset AS ( SELECT MAP( ARRAY['first', 'last', 'age'], ARRAY['Bob', 'Smith', '35'] ) AS user ) SELECT user FROM dataset

이 쿼리가 반환하는 값:

+---------------------------------+ | user | +---------------------------------+ | {last=Smith, first=Bob, age=35} | +---------------------------------+

이 예제에서와 같이 뒤에 [key_name]이 있는 필드 이름을 선택하여 Map 값을 검색할 수 있습니다.

WITH dataset AS ( SELECT MAP( ARRAY['first', 'last', 'age'], ARRAY['Bob', 'Smith', '35'] ) AS user ) SELECT user['first'] AS first_name FROM dataset

이 쿼리가 반환하는 값:

+------------+ | first_name | +------------+ | Bob | +------------+