mysql - 想要在左连接选择中匹配 id 的值
问题描述
我在 mysql 中有 3 个表,1 个用于用户,2 个用于问题,3 个用于结果。
我写了下面的查询。
SELECT q.id,qr.user_id
FROM questions AS q
LEFT JOIN results AS r ON q.id=r.question_id
and r.user_id in (SELECT user_id FROM students)
如果该问题的结果中不存在答案。我想要结果中的问题和用户 ID。例子
user
U1
U2
U3
question
A
B
C
result
A U1 YES
A U2 YES
A U3 YES
B U1 YES
B U2 YES
B U3 YES
C U2 YES
C U3 YES
Desired Output
A U1 YES
A U2 YES
A U3 YES
B U1 YES
B U2 YES
B U3 YES
**C U1 No**
C U2 YES
C U3 YES
请帮忙。
解决方案
尝试这个,
SELECT q.id,qr.user_id
FROM results AS r
LEFT JOIN questions AS q ON r.question_id = q.id
INNER JOIN students AS s ON r.user_id = s.user_id
推荐阅读
- asp.net-mvc - ASP.net,Windows Auth 在长请求中引发 401.2
- reactjs - 在 React 函数式组件中传递 Props
- docker - 无法无根安装 docker daemon
- visual-studio - 使用 .NET Core 5.0 在 VS2019 16.9 中运行 ASP.NET Core 3.1 代码时出现问题
- c++ - 用户输入文件名到特定目录
- xml - Jenkins Pipeline UnitTest 无法验证 xml
- linux - 将文本附加到Linux中的文件
- javascript - Bootstrap-Vue 基于 v-for 中的布尔值的不同 col 大小
- python - django - 如何重用现有表中的字段进行 django 用户身份验证
- javascript - 模块解析失败意外令牌webpack反应nextjs