You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL如何筛选所有结果一致/不一致的测试ID

MySQL筛选同一测试ID下结果全匹配/不全匹配的条目

嘿,这两个查询需求很常见,我来给你清晰的解决方案,直接对应你给出的示例场景:

1. 筛选同一测试ID下所有结果均匹配的条目(示例中ID 1、3)

我们需要找出那些同一测试ID对应的所有result值完全相同的组。这里有两种简洁的实现方式:

方法一:统计唯一结果数量

通过分组后,检查该组内不同result的数量是否为1——如果是,说明所有结果都匹配:

SELECT id
FROM your_table_name
GROUP BY id
HAVING COUNT(DISTINCT result) = 1;

方法二:对比最小/最大结果值

如果同一组内所有result都相同,那么组内的最小值和最大值必然相等,用这个逻辑也能实现:

SELECT id
FROM your_table_name
GROUP BY id
HAVING MIN(result) = MAX(result);

代入你的示例数据,这两个查询都会返回id为1和3的结果。

2. 筛选同一测试ID下并非所有结果都匹配的条目(示例中ID 2)

这个需求正好和上面相反,我们要找同一测试ID下存在不同result值的组,同样有两种写法:

方法一:统计唯一结果数量大于1

SELECT id
FROM your_table_name
GROUP BY id
HAVING COUNT(DISTINCT result) > 1;

方法二:对比最小/最大结果值不相等

SELECT id
FROM your_table_name
GROUP BY id
HAVING MIN(result) != MAX(result);

代入示例数据,这两个查询都会返回id为2的结果。

💡 小提示:记得把SQL里的your_table_name替换成你实际使用的表名哦!

内容的提问来源于stack exchange,提问作者Adventurous

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:56:01