gpt4 book ai didi

sql - 在不同行的多个列中查找重复值

转载 作者:行者123 更新时间:2023-12-04 23:43:43 26 4
gpt4 key购买 nike

我有一个包含多列的数据集,看起来与此类似:

ID1     ID2     ID3      ID4
Blue Grey Fuchsia Green
Black Blue Orange Blue
Green Green Yellow Pink
Pink Yellow NA Orange

我想做的是计算每个值在四列中重复的次数。例如,这是我想从上面得到的:

ID      Replicates   
Blue 3
Black 1
Green 3
Pink 2
Grey 1
Yellow 2
Fuchsia 1
Orange 2

我还希望能够询问频率 >2 的数据集中存在哪个 ID 值。因此预期结果将是:绿色和蓝色。

关于如何在 Oracle 中执行此操作的任何想法?谢谢!

最佳答案

select c, count(*)
from
(
select ID1 as c from tablename
union all
select ID2 as c from tablename
union all
select ID3 as c from tablename
union all
select ID4 as c from tablename
)
group by c

在末尾添加 HAVING count(*) > 2 以仅获得绿色和蓝色。

关于sql - 在不同行的多个列中查找重复值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38612755/

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