맵 함수
맵 함수 (Map Functions)
이 섹션은 MAP 타입에 사용할 수 있는 함수를 설명해요.
출처: 문서
본문
| Name | Description |
|---|---|
cardinality(map) |
맵의 크기를 반환 (또는 맵의 항목 수). |
element_at(map, key) |
주어진 key에 대한 값을 리스트로 반환하고, 맵에 키가 없으면 빈 리스트를 반환. 두 번째 파라미터에 제공한 key의 타입은 맵 키의 타입과 일치해야 함. 그렇지 않으면 오류 발생. |
map_concat(maps...) |
입력 maps를 병합해 만든 맵을 반환. 키 충돌 시 값은 그 키를 가진 마지막 맵에서 가져옴. |
map_contains(map, key) |
맵이 주어진 키를 포함하는지 확인. |
map_contains_entry(map, key, value) |
맵이 주어진 키-값 쌍을 포함하는지 확인. |
map_contains_value(map, value) |
맵이 주어진 값을 포함하는지 확인. |
map_entries(map) |
맵의 각 키-값 쌍에 대해 struct(k, v) 리스트를 반환. |
map_extract(map, key) |
주어진 key에 대한 값을 리스트로 반환하고, 맵에 키가 없으면 빈 리스트를 반환. 두 번째 파라미터에 제공한 key의 타입은 맵 키의 타입과 일치해야 함. 그렇지 않으면 오류 발생. |
map_extract_value(map, key) |
주어진 key에 대한 값을 반환하고, 맵에 key가 없으면 NULL을 반환. 두 번째 파라미터에 제공한 key의 타입은 맵 키의 타입과 일치해야 함. 그렇지 않으면 오류 발생. |
map_from_entries(STRUCT(k, v)[]) |
배열의 항목들로 만든 맵을 반환. |
map_keys(map) |
맵의 모든 키 리스트를 반환. |
map_values(map) |
맵의 모든 값 리스트를 반환. |
map() |
빈 맵을 반환. |
map[entry] |
주어진 key에 대한 값을 반환하고, 맵에 key가 없으면 NULL을 반환. 두 번째 파라미터에 제공한 key의 타입은 맵 키의 타입과 일치해야 함. 그렇지 않으면 오류 발생. |
cardinality(map)
| Description | 맵의 크기(또는 맵의 항목 수)를 반환. |
| Example | cardinality(map([4, 2], ['a', 'b'])) |
| Result | 2 |
element_at(map, key)
| Description | 주어진 key에 대한 값을 리스트로 반환하고, 맵에 키가 없으면 빈 리스트를 반환. 두 번째 파라미터에 제공한 key의 타입은 맵 키의 타입과 일치해야 함. 그렇지 않으면 오류 발생. |
| Example | element_at(map([100, 5], [42, 43]), 100) |
| Result | [42] |
| Aliases | map_extract(map, key) |
map_concat(maps...)
| Description | 입력 maps를 병합해 만든 맵을 반환. 키 충돌 시 값은 그 키를 가진 마지막 맵에서 가져옴. |
| Example | map_concat(MAP {'key1': 10, 'key2': 20}, MAP {'key3': 30}, MAP {'key2': 5}) |
| Result | {key1=10, key2=5, key3=30} |
map_contains(map, key)
| Description | 맵이 주어진 키를 포함하는지 확인. |
| Example | map_contains(MAP {'key1': 10, 'key2': 20, 'key3': 30}, 'key2') |
| Result | true |
map_contains_entry(map, key, value)
| Description | 맵이 주어진 키-값 쌍을 포함하는지 확인. |
| Example | map_contains_entry(MAP {'key1': 10, 'key2': 20, 'key3': 30}, 'key2', 20) |
| Result | true |
map_contains_value(map, value)
| Description | 맵이 주어진 값을 포함하는지 확인. |
| Example | map_contains_value(MAP {'key1': 10, 'key2': 20, 'key3': 30}, 20) |
| Result | true |
map_entries(map)
| Description | 맵의 각 키-값 쌍에 대해 struct(k, v) 리스트를 반환. |
| Example | map_entries(map([100, 5], [42, 43])) |
| Result | [{'key': 100, 'value': 42}, {'key': 5, 'value': 43}] |
map_extract(map, key)
| Description | 주어진 key에 대한 값을 리스트로 반환하고, 맵에 키가 없으면 NULL을 반환. 두 번째 파라미터에 제공한 key의 타입은 맵 키의 타입과 일치해야 함. 그렇지 않으면 오류 반환. |
| Example | map_extract(map([100, 5], [42, 43]), 100) |
| Result | [42] |
| Aliases | element_at(map, key) |
map_extract_value(map, key)
| Description | 주어진 key에 대한 값을 반환하고, 맵에 key가 없으면 NULL을 반환. 두 번째 파라미터에 제공한 key의 타입은 맵 키의 타입과 일치해야 함. 그렇지 않으면 오류 발생. |
| Example | map_extract_value(map([100, 5], [42, 43]), 100); |
| Result | 42 |
| Aliases | map[key] |
map_from_entries(STRUCT(k, v)[])
| Description | 배열의 항목들로 만든 맵을 반환. |
| Example | map_from_entries([{k: 5, v: 'val1'}, {k: 3, v: 'val2'}]) |
| Result | {5=val1, 3=val2} |
map_keys(map)
| Description | 맵의 모든 키 리스트를 반환. |
| Example | map_keys(map([100, 5], [42,43])) |
| Result | [100, 5] |
map_values(map)
| Description | 맵의 모든 값 리스트를 반환. |
| Example | map_values(map([100, 5], [42, 43])) |
| Result | [42, 43] |
map()
| Description | 빈 맵을 반환. |
| Example | map() |
| Result | {} |
map[entry]
| Description | 주어진 key에 대한 값을 반환하고, 맵에 key가 없으면 NULL을 반환. 두 번째 파라미터에 제공한 key의 타입은 맵 키의 타입과 일치해야 함. 그렇지 않으면 오류 발생. |
| Example | map([100, 5], ['a', 'b'])[100] |
| Result | a |
| Aliases | map_extract_value(map, key) |