文档

MAP_VALUES

更新时间:

将MAP对象a中的所有Value生成ARRAY数组。

命令格式

array<V> map_values(map<K, V> <a>)

参数说明

a:必填。MAP对象。map<K, V>中的KV指代MAP对象的Key、Value。

返回值说明

返回ARRAY类型。输入MAP对象为NULL时,返回结果为NULL。

使用示例

例如表t_table_map的字段为c1 bigint,t_map map<string,bigint>,包含数据如下:

+------------+-------+
| c1         | t_map |
+------------+-------+
| 1000       | {k11:86, k21:15} |
| 1001       | {k12:97, k22:2} |
| 1002       | {k13:99, k23:1} |
+------------+-------+

命令示例如下。

--将t_map中的Value作为数组返回。
select c1,map_values(t_map) from t_table_map;
--返回结果如下。
+------------+------+
| c1         | _c1  |
+------------+------+
| 1000       | [86, 15] |
| 1001       | [97, 2] |
| 1002       | [99, 1] |
+------------+------+

相关函数

MAP_VALUES函数属于复杂类型函数,更多对复杂类型数据(例如ARRAY、MAP、STRUCT、JSON数据)的处理函数请参见复杂类型函数