gpt4 book ai didi

mysql - SQL查询以查找两个特定组中的用户数

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

例如,我在 MySQL 数据库中有一个包含两个整数列的表:

用户名 |组别
10 | 300
11 | 300
11 | 301
12 | 302

给定两个 groupid,我正在寻找最好和最快的方法来查找两个组中的 userid。我的表包含 23M 行,我需要为每一对不同的 groupids。目前,两列都已编入索引,但即使是一对组,也需要很长时间才能获得结果,而且我有 1000 个不同的组 ID。我现在运行的查询是:

select count(t2.userid) 
from usergroup t1, usergroup t2
where t1.groupid = 27 and t2.groupid = 714 and t1.userid = t2.userid

有没有办法快速做到这一点?

最佳答案

为什么加入?

select 
u.userid
from
usergroup u
where
u.groupid in (27, 714)
group by
u.userid
having
count(u.userid) > 1

假设 userid 和 groupid 的组合是唯一的,我认为它应该在这样的表中。

关于mysql - SQL查询以查找两个特定组中的用户数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6365978/

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