有以下表格:
表 1:Question
QuestionID (ID)
QuestionText (Text)
表 2:Question Response
QuestionResponseId (ID)
QuestionResponseTypeId (References Question Response Type)
QuestionResponseDetailsId (References Question Response Details) - This should be used for text only values (Custom Answers)
QuestionResponse (Boolean)
表 3:Question Response Type
QuestionResponseTypeId (Id)
Description (Text) -- Dictates if the answer is a boolean or a text field
表 4:Question Response Details
QuestionResponseDetailsId (Id)
Description (Text) - Holds the text answer to the questions
填充以下表格后,您将拥有一个包含问题的结构,即问题的响应(文本或布尔值)。
然后您可以对此进行过滤以仅查看基于文本的答案,例如:
SELECT * FROM QuestionResponse
INNER JOIN QuestionResponseDetails ON QuestionResponse.QuestionResponseDetailsId = QuestionResponseDetails.QuestionResponseDetailsId
WHERE QuestionResponse.QuestionResponseTypeId = 1
其中 1 是基于文本的答案,2 是基于布尔值的答案(来自问题响应类型表)