带有条件问题的问答调查的数据库架构
条件问题,其中后续问题根据对前一个问题的回答显示,对数据库设计提出了挑战。这是利用多个表和关系的解决方案:
调查
问题
-
表格:问题
-
关系:很多一对一与调查
-
附加列:根据先前问题的答案指定显示哪些问题的逻辑(例如, show_if_question_id)
答案
-
表格:答案
-
关系:多对一问题
-
附加列:链接到触发条件问题显示的特定答案(例如, conditional_answer_id)
可能的答案
-
表格:可能的答案
-
关系:多对一问题
-
列:每个问题的可能答案选项
此架构允许以下功能:
- 存储逻辑用于通过“show_if_question_id”在问题表中显示条件问题
- 通过“conditional_answer_id”列将条件问题链接到“答案”表中的特定答案。
- 为“可能的答案”表中的每个问题定义可能的答案选项。
通过组合这些表格和关系,数据库可以有效地存储支持问答调查中的条件问题所需的信息。请注意,条件逻辑本身的处理可能会在应用程序端实现,如用户编辑所示。
以上是如何为有条件问题的问答调查设计数据库架构?的详细内容。更多信息请关注PHP中文网其他相关文章!