在复合类型数组中,我应该如何为数组中的所有条目选择复合类型的第一个元素?

支撑

我有一个复合类型:

create type p as (a int, b int);

然后我创建了一个表:

create table f(pv p[]);

用它填充值:

insert into f values(array[(10,20),(30,40)]::p[]);
insert into f values(array[(1,20)]::p[]);

现在我想要的是一个“select”语句,它为数组中的每个条目显示元素“a”,预期可能是这样的:

|pv     |
|{10,30}|
|{1}    |

我已经厌倦了很多语句组合,但它没有提供答案。

任何人都可以帮忙吗?

谢谢!

支撑

考西克·纳亚克

您应该考虑id在表中添加一列,以便可以在unnesting之后对该 id 进行分组

SELECT array_agg(a)
FROM f
    ,unnest(pv)
GROUP BY id;

否则,您可以按整个数组分组

SELECT array_agg(a)
FROM f
    ,unnest(pv)
GROUP BY pv;

演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从复合类型数组中获取第一个值

如何加入数组中除第一个元素之外的所有元素?

从Postgres中的复合类型数组中选择

如何使用 knex.select() 选择数组列类型的列的第一个元素?

如何选择所有<tr>中的所有第一个td到数组中

如何从数组中删除除JavaScript中的第一个元素以外的所有元素

删除 Elixir 中列表元素的所有条目(不仅仅是第一个)

Python Pandas:在所有单元格中选择数组中的第一个元素

从MongoDB中的所有文档中获取数组字段的第一个元素的总和

如何检查数组中的第一个元素

如何获取ng-repeat中数组所有索引的第一个元素的和?

在Python中的numpy数组中查找具有条件的第一个元素的索引

使用打字稿从数组中提取除第一个之外的所有元素类型

如何使用CSS选择所有元素中第一个出现的类

PostgreSQL:选择所有具有与另一个表中的所有条目相对应的条目的类型

如何删除数组中除第一个索引之外的所有内容?

如何找到数组中连续零序列的所有第一个索引?

多维数组中的array_unshift在所有数组的第一个元素处插入

无法遍历对象数组中的所有元素;ngFor或组件中的迭代只给我第一个元素

在Julia中访问复合类型内部的数组

在CSS中,如何不选择第一个或最后一个类型?

如何在复合类型的Postgres数组中存储双引号?

如何将查询加载到复合类型数组中?

创建一个新数组,其中包含原始数组中位于第一个负元素之前的所有元素

PHP:获取数组中的第一个和最后一个元素条目及其键

Scala / Spark-如何获取所有子数组的第一个元素

跳过Golang中数组的第一个元素

从数组中删除第一个元素

刷卡中的数组获取第一个元素