数据库表结构:经与查询连接表的麻烦
会话表(又名考试表)
SessionId(auto) SessionName
137 XULWQ
问表:
SessionId QuestionId QuestionContent QuestionNo QuestionMarks OptionId
137 1 Name 2 Things 1 5 5
137 2 Name 3 Things 2 5 2
Option_Table表:
OptionId OptionType
1 A-C
2 A-D
3 A-E
4 A-F
5 A-G
6 A-H
回答表:
AnswerId(auto) SessionId QuestionId Answer
200 137 1 B
201 137 1 F
202 137 2 D
203 137 2 A
204 137 2 C
我无法编译下面的查询。我想在查询中选择下面的字段,但是我遇到的问题是我的联接。如果您查看最后一次加入,我试图从Option_Table
表中检索OptionID
,但我必须通过Answer
表,该表没有该字段。我的问题是,我有3个字段实际上依靠加入问题表。
我的问题是加入下面的表的正确方式是什么,以便它显示每个问题的答案与我想要选择的字段?
SELECT q.SessionId, s.SessionName, q.QuestionId, q.QuestionNo, q.QuestionContent, an.Answer, an.AnswerId, q.QuestionMarks, q.OptionId, o.OptionType
FROM Session s
INNER JOIN Question q ON s.SessionId = q.SessionId
JOIN Answer an ON q.QuestionId = an.QuestionId
JOIN Option_Table o ON an.OptionId = o.OptionId
WHERE s.SessionName = ?
ORDER BY q.QuestionId, an.Answer
输出要求:
你想要的输出是什么? –
我在屏幕截图中包含了查询所需的输出。很抱歉,可能难以看到 – user1881090
@ user1881090确定,但是,您是否尝试了一些答案? – Lamak