首页 > 解决方案 > 如何转换一列数组值

问题描述

如何将包含数组值的列转换为单独的列:

多行,一列

{100,67,9}
{100,100}   
{100,100,100}
{100,9}

多行多列

100 67  9
100 100 
100 100 100
100 9   

标签: sqlpostgresqlpgadmin

解决方案


SQL 查询具有一组固定的列。如果您知道最大数量,则只需提取值:

select t.ar[1] as col1, t.ar[2] as col2, t.ar[3] as col3
from t;

如果您不知道结果集中有多少列,那么您需要使用动态 SQL。

是一个 db<>fiddle。


推荐阅读