首页 >数据库 >mysql教程 >如何查找 MySQL 列中多行的共同值?

如何查找 MySQL 列中多行的共同值?

Mary-Kate Olsen
Mary-Kate Olsen原创
2025-01-22 21:17:16880浏览

How to Find Common Values Across Multiple Rows in a MySQL Column?

查找 MySQL 列中的通用值

使用 MySQL 等关系数据库时,通常需要检索共享相同列值的行。考虑一个表包含以下数据的场景:

ID Score
1 95
2 100
3 88
4 100
5 73

问题:我们如何检索出现在 ID 为 2 和 4 的两行中的分数?

解决方案:

此查询使用 GROUP BY 和 HAVING子句来实现我们想要的结果:

SELECT Score
FROM t
GROUP BY Score
HAVING SUM(id = 2) > 0 AND SUM(id = 4) > 0

解释:

  • GROUP BY Score:此子句按 Score 列对行进行分组。
  • 有 SUM(id = 2) > 0:HAVING 子句的这一部分检查每个组内 id = 2 的行的总和是否大于零(分数)。
  • AND SUM(id = 4) > > 0:此条件检查同一组内 id = 4 的行的总和是否也大于零。

结果:

通过组合这些HAVING 子句中的两个条件,我们仅检索 id = 2 和 id = 4 的行共有的 Score。在这种情况下,它返回值100.

以上是如何查找 MySQL 列中多行的共同值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn