gpt4 book ai didi

Postgresql:只保留整数数组中的唯一值

转载 作者:行者123 更新时间:2023-11-29 12:44:32 26 4
gpt4 key购买 nike

假设我有一个整数数组

1  6 6  3 3  8  4 4

它将始终采用 n*(数字对)+ 2(唯一数字) 的形式。

是否有一种有效的方法只保留 2 个唯一值(即 2 个出现一次的值)?

在这里,我想得到 1 和 8。

到目前为止是我所拥有的:

SELECT node_id 
FROM
( SELECT node_id, COUNT(*)
FROM unnest(array[1, 6, 6 , 3, 3 , 8 , 4 ,4]) AS node_id
GROUP BY node_id
) foo
ORDER BY count LIMIT 2;

最佳答案

我认为你非常接近:

SELECT node_id 
FROM (SELECT node_id, COUNT(*)
FROM unnest(array[1, 6, 6 , 3, 3 , 8 , 4 ,4]) AS node_id
GROUP BY node_id
HAVING count(*) = 1
) foo ;

如果愿意,您可以使用 array_agg() 将它们重新组合成一个数组。

关于Postgresql:只保留整数数组中的唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31877542/

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