我有一个交叉引用表,需要查找一个ID的公共值,其中第二个ID在查询中给出了多个值。这对于“OR”来说很容易,但我不能为我的生活找出如何使用“AND”来做到这一点。我确信有一个明显的解决方案已经盯着我这么多个小时但是尽管进行了大量的测试和搜索,但我找不到它。非常感谢任何帮助。
cross_reference_table with columns: id,location,attendee
使用OR非常简单:
SELECT DISTINCT location FROM cross_reference_table
WHERE attendee = 6 OR attendee = 7 OR attendee = 8;
但是我只需要返回参与者6,7和8都出席的地点。同样,我不能简单地在上面的查询结构中使用AND。我一直在反对这一点,根本无法取得任何进展。提前感谢任何建议。
答案 0 :(得分:1)
尝试这样的事情
select distinct location
From cross_reference_table
where attendee =6 or attendee = 7 or attendee=8
group by attendee, location
having count(*)=3