У меня есть приложение со 40 вопросами. Я держу вопросы в tbQuestion и их соответствующие ответы в tbAnswer вместе с тем, что пользователь выбрал в tbResult.Нужно SQL-запрос для приложения для викторины
Вот структура таблицы:
tbQuestion: tbAnswer: tbResult:
QuestionID AnswerID ResultID
QuestionText QuestionID QuestionID
AnswerText AnswerID
UserID
Я хочу, чтобы выбрать все вопросы, но указывают на меня ли они ответили или нет, если есть строка в tbResult. Это что-то похожее на следующий запрос, но это только выбор вопросов, на которые я ответил. Я хочу использовать AS Answered как показатель того, был ли получен ответ. Пустой, если он не ответил, answerID, если он был дан ответ.
SELECT tbQuestion.QuestionID, QuestionText, tbAnswer.AnswerID, AnswerText, tbResult.AnseredID AS Answered
FROM tbQuestion
JOIN tbAnswer ON tbQuestion.QuestionID = tbAnswer.QuestionID
LEFT OUTER JOIN tbResult ON tbQuestion.QuestionID = tbResult.QuestionID
WHERE tbResult.UserID = 1234567
Также есть 39 радио ввод ответов (один ответ на каждый вопрос) и 1 вопрос с флажками, где пользователь может иметь несколько ответов на один вопрос, так что я должен знать AnswerID из каждого ответа они дали ,