南大通用GBase 8a unnest函数介绍,类似group_concat的逆函数

GBase 8a的group_concat可以将多行值合并成一个字段,而unnest则相反,将一个字段拆成多行。本文测试版本的unnext函数仅支持一个参数。

环境

9.5.3.28.14.patch1

gbase> select * from tt;
+---------+
| v       |
+---------+
| 1,2,3,4 |
| a,b,c   |
+---------+
2 rows in set (Elapsed: 00:00:00.01)

unnest函数

参数文本必须是逗号分隔。如果是别的,可以用replace函数先替换成逗号。

gbase> select unnest(v) f1 from tt;
+------+
| f1   |
+------+
| 1    |
| 2    |
| 3    |
| 4    |
| a    |
| b    |
| c    |
+------+
7 rows in set (Elapsed: 00:00:00.00)

gbase> select unnest('1,2,3,4,5,6,7,8');
+---------------------------+
| unnest('1,2,3,4,5,6,7,8') |
+---------------------------+
| 1                         |
| 2                         |
| 3                         |
| 4                         |
| 5                         |
| 6                         |
| 7                         |
| 8                         |
+---------------------------+
8 rows in set (Elapsed: 00:00:00.00)