gpt4 book ai didi

mysql - 尝试根据 mysql 中 100% 匹配的一组记录查找单个记录

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

我一直在追赶这个。我有一个表(在此示例中保持简单)。

LogID (Primary Key)
UserID (Foreign Key)
Skipped (Tiny Int, default 0) can be 1 or 0

这是一个一对多的关系,这个表是这个连接中的“多”

用户 ie:John Smith 的 UserID 可能为 10。根据特定记录的实例,每条记录都可以有 skipped = 1 或 Skipped = 0。

这是一个简单的数据分解

1 | 10 | 1
2 | 10 | 0
3 | 10 | 1
4 | 10 | 0

所以这个用户在那里 4 次。 2条记录显示跳过(1),2条记录显示未跳过(0)。

我需要创建一个查询来查找被 100% 跳过的用户。所以一个看起来像这样的人:

1 | 11 | 1
2 | 11 | 1
3 | 11 | 1
4 | 11 | 1

如果 Skipped 为 0,我不想要该用户。用户可以混合(跳过是和否),所以我需要找到一个仅 100% 跳过的用户。我将需要它按 UserID 分组或至少在找到时对其进行 DISTINCT 处理,因此我得到单个用户(没有重复)。我一直在思考 GROUP BY、HAVINGS、COUNT 和 SUM 以获得这个,但我一直被查询的 100% 部分所困扰。

我正在使用 MySQL 5.1.56

非常感谢任何建议。

谢谢!韩纸

最佳答案

select userid 
from table
group by userid
having count(userid) = sum(if(skipped = 1,1,0))

关于mysql - 尝试根据 mysql 中 100% 匹配的一组记录查找单个记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8750501/

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