맵 함수

맵 함수 (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) |

더 알아보기 (Learn more)