Categories:

Semi-structured and structured data functions (Map)

MAP_CAT¶

Returns the concatenatation of two MAPs.

Syntax¶

MAP_CAT( <map1> , <map2> )
Copy

Arguments¶

map1

The source MAP.

map2

The MAP to be appended to map1.

Returns¶

The return type of this function is the type of map1. map2 is coerced into the map1 type following the coercion rules. For information about coercion rules, see Implicit casting a value (coercion).

Usage notes¶

  • If both map1 and map2 have a value with the same key, then the output map contains the value from map2.

  • If either argument is NULL, the function returns NULL without reporting any error.

Examples¶

Create two MAPs and concatenate them:

SELECT MAP_CAT(
  {'map1key1':'map1value1','map1key2':'map1value2'}::MAP(VARCHAR,VARCHAR),
  {'map2key1':'map2value1','map2key2':'map2value2'}::MAP(VARCHAR,VARCHAR))
  AS concatenated_maps;
Copy
+-----------------------------+
| CONCATENATED_MAPS           |
|-----------------------------|
| {                           |
|   "map1key1": "map1value1", |
|   "map1key2": "map1value2", |
|   "map2key1": "map2value1", |
|   "map2key2": "map2value2"  |
| }                           |
+-----------------------------+