由另一列分组的array_agg()值
这是我的表,如下所示
p_no type name value
------------------------
1 A Tomy 1
1 A Nick 2
1 B Tomy 3
1 B Nick 4
1 C Tomy 5
1 C Nick 4
2 A Tomy 8
2 A Nick 7
2 B Tomy 5
2 B Nick 4
,表示每个 p_no
表示一个块,该块在两个 a,b,c
type中都记录了poeple的值(可能是更多类型)。
我想选择一个具有其所有类型的人
给定的人的价值 p_no = 1,name = tomy
A B C D
------------------
1 3 5 ..
我尝试过的,
SELECT p_no, t[1] A, t[2] B/*, t[3] C.....*/
FROM (
SELECT p_no, ARRAY_AGG(type) FILTER (WHERE name='Tomy') t
FROM type
GROUP BY 1
ORDER BY 1) _unused
但它插入了array_agg()includ yavence
我想我需要类似的东西到 array_agg('type''组'组'组)
是可能的查询吗?还是有更好的替代方案?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您的直觉是对的。您想汇总
value
由type
订购,因此:db<> tiddle。
Your intuition is right. You want to aggregate
value
ordered bytype
, so:db<>fiddle.