gpt4 book ai didi

sql - Postgres : count unique array entries from subquery

转载 作者:行者123 更新时间:2023-11-29 11:54:54 24 4
gpt4 key购买 nike

如果我的子查询 foo 释放行:-

ID, USERS 
1 {23129}
2 {23142}
3 {23300,23300}
4 {23129,23300}

如何使用窗口函数获取查询中的唯一用户数,例如:-

SELECT ... FROM ( <subquery> ) FOO

我试过这个:-

array_length(array_agg(array_length(array(SELECT Distinct unnest(users))),1)) over(), 1)

但是得到数组维度不一样的错误

请注意:我无法更改子查询来解决此问题。

我可以按如下方式获取数组中的 ID:-

string_to_array(string_agg(array_to_string(user_ids, ','), ',') over(),',')

但它们并不截然不同。

最佳答案

你把事情搞得太复杂了——你可以取消嵌套数组,然后从中查询不同的计数:

SELECT COUNT(DISTINCT u)
FROM (SELECT UNNEST(users) AS u
FROM mytable) t

关于sql - Postgres : count unique array entries from subquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46649693/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com