使用UNNEST函数在Doris数据库中将一行记录转换为多行记录

ChatGPT4o 使用 ChatGPT 4o 回答

问题:

Doris数据库记录
一行记录 共有4列 A,B1,B2,B3 如何转换成多行2两列的结构如下 A,B1 A,B2 A,B3 使用unnest函数实现

回答:

在Doris数据库中,可以使用 UNNEST 函数将一行记录转换为多行记录。假设你有一个表 my_table,其中包含列 A, B1, B2, B3。你希望将其转换为多行两列���结构 A, B,其中 B 包含 B1, B2, B3 的值。

以下是如何使用 UNNEST 函数来实现这一点的示例:

SELECT A, B
FROM my_table
UNNEST(ARRAY[B1, B2, B3]) AS B;

在这个查询中,UNNEST 函数将 B1, B2, B3 这三个列的值转换为一个数组,然后将数组展开为多行。AS B 用于给展开后的列命名为 B

假设 my_table 的数据如下:

AB1B2B3
1102030
2405060

执行上述查询后,结果将会是:

AB
110
120
130
240
250
260

这样就实现了将一行记录转换为多行记录的目标��