gpt4 book ai didi

hive - 在 Hive 中获取数据的交集

转载 作者:行者123 更新时间:2023-12-04 05:24:53 25 4
gpt4 key购买 nike

我在 hive 中有以下数据:

userid cityid
1 15
2 15
1 7
3 15
2 8
3 9
3 7

而且我只想保留具有 cityid 15 和 cityid 7 的用户 ID(在我的示例中,它将是 userid 的 1 和 3)。
我试过:
select userid from table where cityid = 15 and userid in (select userid from table where cityid = 7);

但是对于 hive ,它不起作用。
有人可以帮忙吗?

谢谢!

最佳答案

尽量避免自加入

SELECT  userid
FROM
( SELECT userid, collect_set( cityid) as cities
FROM table
GROUP BY userid
)
WHERE array_contains( cities, 7 )
AND array_contains( cities, 15 );

关于hive - 在 Hive 中获取数据的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13306593/

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