跳到主要内容

ARRAY_AGG

描述

将一列中的值(包括空值 null)串联成一个数组,可以用于多行转一行(行转列)。

语法

ARRAY_AGG(<col>)

参数

参数说明
<col>确定要放入数组的值的表达式(通常是列名)

返回值

返回 ARRAY 类型的值,特殊情况:

  • 数组中元素不保证顺序。
  • 返回转换生成的数组。数组中的元素类型与 col 类型一致。

举例

select * from test_doris_array_agg;
+------+------+

| c1 | c2 |

+------+------+

| 1 | a |

| 1 | b |

| 2 | c |

| 2 | NULL |

| 3 | NULL |

+------+------+
select c1, array_agg(c2) from test_doris_array_agg group by c1;
+------+-----------------+

| c1 | array_agg(`c2`) |

+------+-----------------+

| 1 | ["a","b"] |

| 2 | [NULL,"c"] |

| 3 | [NULL] |

+------+-----------------+