以下是个人资料答案表:
profile_id | answer_id
----------------------
1 1
1 4
1 10
这是一个表格,其中包含民意调查受访者的回复列表:
user_id | answer_id
-------------------
1 1
1 9
2 1
2 4
2 10
3 14
3 29
我想返回答案在 (6,9) 和 (1,10) 中的用户列表,基本上所有与配置文件 1 匹配的答案。
如何编写此选择查询?
我尝试了以下方法,但显然我不太了解 group by 的工作原理:
SELECT DISTINCT [user_id]
FROM [user_question_answers] a
GROUP BY a.[user_id]
HAVING a.[answer_id] IN (6,9)
AND a.[answer_id] IN (1,10)
编辑:仅返回 user_id 1