我有一个交叉引用表,需要找到一个ID的公共值,其中第二个ID具有查询中给定的多个值。用“或”这个词很容易,但我一生都不知道怎么用“和”这个词。我确信有一个显而易见的解决方案已经盯着我看了好几个小时了,但是尽管我做了很多测试和搜索,还是找不到。任何帮助都非常感谢。
带列的交叉引用表:
id、地点、与会者
使用或容易:

SELECT DISTINCT location FROM cross_reference_table
WHERE attendee = 6 OR attendee = 7 OR attendee = 8;

但我只需要返回6、7和8位与会者都出席的地点。同样,我不能简单地在上面的查询结构中使用AND。我一直在为这件事头痛,根本无法取得任何进展。提前谢谢你的建议。

最佳答案

试试这样的

select distinct location
From cross_reference_table
where attendee =6 or attendee = 7 or attendee=8
group by attendee, location
having count(*)=3

关于mysql - mysql-如何使用AND在基于另一列的一个表列中查找公用值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2234481/

10-11 23:12