Skip to content
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
{
"title": "MAP_CONCAT",
"language": "en"
}
---

## Description

Concatenates multiple maps into a single map.

## Syntax

```sql
MAP_CONCAT(<map1> [, <map2> [, <map3> ... ]])
```

## Parameters
- `<map1>`, `<map2>`, `<map3>`, ...: [`MAP`](../../../basic-element/sql-data-types/semi-structured/MAP.md) type, the input maps to concatenate.

## Return Value
Returns a concatenated `MAP` containing all key-value pairs from the input maps.

## Usage Notes
1. The function accepts zero or more map arguments.
2. If any argument is NULL, the result is NULL.

## Examples
1. Basic usage
```sql
select map_concat() as empty_map;
```
```text
+-----------+
| empty_map |
+-----------+
| {} |
+-----------+
```

```sql
select map_concat(map('single', 'argument')) as single_argument;
```
```text
+-----------------+
| single_argument |
+-----------------+
| {"single":"argument"} |
+-----------------+
```

```sql
select map_concat({'a': 'apple'}, {'b': 'banana'}, {'c': 'cherry'}) as literal_maps_merged;
```
```text
+-------------------------------+
| literal_maps_merged |
+-------------------------------+
| {"a":"apple", "b":"banana", "c":"cherry"} |
+-------------------------------+
```

2. NULL parameters
```sql
select map_concat({'a': 'apple'}, NULL) as with_null;
```
```text
+------------+
| with_null |
+------------+
| NULL |
+------------+
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
---
{
"title": "MAP_CONCAT",
"language": "zh-CN"
}
---

## 描述

将多个 map 合并为一个 map。

## 语法

```sql
MAP_CONCAT(<map1> [, <map2> [, <map3> ... ]])
```

## 参数

| 参数 | 说明 |
| -- | -- |
| `<map1>`, `<map2>`, `<map3>`, ... | [`MAP`](../../../basic-element/sql-data-types/semi-structured/MAP.md) 类型,需要合并的输入 map |

## 返回值

返回一个合并后的 `MAP`,包含所有输入 map 中的键值对。

## 使用说明

1. 该函数接受零个或多个 map 参数。
2. 如果任何参数为 NULL,则结果为 NULL。

## 示例

1. 基本用法
```sql
select map_concat() as empty_map;
```
```text
+-----------+
| empty_map |
+-----------+
| {} |
+-----------+
```

```sql
select map_concat(map('single', 'argument')) as single_argument;
```
```text
+-----------------+
| single_argument |
+-----------------+
| {"single":"argument"} |
+-----------------+
```

```sql
select map_concat({'a': 'apple'}, {'b': 'banana'}, {'c': 'cherry'}) as literal_maps_merged;
```
```text
+-------------------------------+
| literal_maps_merged |
+-------------------------------+
| {"a":"apple", "b":"banana", "c":"cherry"} |
+-------------------------------+
```

2. NULL 参数
```sql
select map_concat({'a': 'apple'}, NULL) as with_null;
```
```text
+------------+
| with_null |
+------------+
| NULL |
+------------+
```
3 changes: 2 additions & 1 deletion versioned_sidebars/version-4.x-sidebars.json
Original file line number Diff line number Diff line change
Expand Up @@ -1631,7 +1631,8 @@
"sql-manual/sql-functions/scalar-functions/map-functions/map-keys",
"sql-manual/sql-functions/scalar-functions/map-functions/map-size",
"sql-manual/sql-functions/scalar-functions/map-functions/map-values",
"sql-manual/sql-functions/scalar-functions/map-functions/str-to-map"
"sql-manual/sql-functions/scalar-functions/map-functions/str-to-map",
"sql-manual/sql-functions/scalar-functions/map-functions/map-concat"
]
},
{
Expand Down