这是我的问题
book student_id
1 1
2 2
3 3
1 2
在本例中,我想要第 1 本书,因为它对于学生 1 和 2 的组合来说是常见的(要匹配的学生数量可能会发生变化)
如何根据组合获取两个或更多学生共用的书。有没有办法让这些值充当临时列
最佳答案
您只需将group by
与having
一起使用:
select book
from table t
group by book
having count(*) > 1;
如果表中可以有重复项(同一学生和同一本书),那么最后一行应该是:
having count(distinct student_id) > 1;
关于mysql - 如何选择列中多个值共有的 id 或值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29369893/