我们正在为内部使用构建调查引擎。 我想知道如何将问题分支逻辑保存到数据库中? 以前做过这个的任何机构还是对数据库架构的任何想法?

如果用户回答了答案,我们需要根据添加到问题中的逻辑跳过下一个问题。每个问题都可以添加多个逻辑。

例如:

Question: Is it Sunny, Raining or Cloudy?
Answer: Raining.
The next question should be based on the previous answer.
if(Raining)
{
}

if(Sunny)
{
}

if(Cloudy)
{
}

我如何将上述内容保存到数据库并从那里开始?

有什么好主意吗?

#1楼 票数:5

您基本上希望将决策树保存到数据库中。 您希望将每个问题存储为一个节点,并且为了规范化数据库的利益,将边缘存储在一个单独的表中,该表关联依赖于其他问题(有向边)的问题,并在适当时走路。

编辑:一个简单的设计可以是两个表:问题和边缘。 问题只有idquestion text 边缘可以answered_question_idnext_question_idanswer 第一个表格是不言自明的。 第二个表列出,如果一个问题answered_question_id被问及的东西,要么等于或匹配回答answer ,期待质疑next_question_id未来。

  ask by Sean translate from so

未解决问题?本站智能推荐:

1回复

Android中带有分支的SurveyApp

我想在Android中使用分支(Skip Logic)实现调查。 我的第一个解决方案是将ViewPager与Tab结合使用。 但是,分支出现问题。 例如,正常流程是用户从1、2、3、4、5和6回答问题。但是,如果是问题1,则用户在4个答案A,B,C和D中选择答案A,则流程将跳过问题4和5。
1回复

在Sharepoint2007调查中,仅当Question1和Question2=Yes时才需要显示Question3

我需要在Sharepoint 2007网站上创建调查。 在此调查中,我需要: (a)询问所有人问题1和问题2 (b)仅在Question1 =是并且Question2 =是时显示Question3
1回复

如果不符合纳入标准,则阻止数据输入

我想知道如果不符合纳入标准(在临床试验或 EHR 研究中? 是否有某种分支逻辑或其他任何东西?/ 例如,现在有 3 个是的问题,如果都是是,则可以填写下一个工具,如果不是所有条件都满足,则显示消息(并非所有条件都满足)并阻止数据输入。 谢谢你的回应。
1回复

保存到数据库时yii2中的逻辑错误

下面的代码可能存在无法识别的逻辑错误,因为我的逻辑不太好。 public function actionSave() { //initiate connection $request = Yii::$app->request; if (Yii:
10回复

数据库和“分支”

我们目前正在开发一个使用数据库的应用程序。 每次我们更新数据库结构时,我们都必须提供一个脚本来将数据库从先前版本更新为当前版本。 因此,数据库当前有一个数字,它给了我们当前版本,然后我们的软件在我们想要使用“旧”数据库时进行更新。 我们遇到的问题是我们有分支机构: 当我们创建一个
1回复

使用Java将字段保存到数据库

我的应用程序内部有一个按钮,应该保存到数据库中。 谁能告诉我您的代码有什么问题吗? 它根本没有节省任何东西。
3回复

我想添加一些精细的速度范围并将其保存到数据库中

..我的问题是我应该检查速度范围是否重叠,如果它们重叠,我应该显示一条消息,说明速度范围不能重叠。
2回复

在数据库中存储逻辑

这与存储过程无关(或者至少我不认为如此)。 可以说我有一个数据库。 数据库中包含一些城市以及在这些城市中发生的事件。 某些人将要使用该网站,他们希望在进入该网站时获得有关某些事件的通知。 用于指定要通知其事件的事件的规则应该是通用的。 例如,我希望用户能够说“我希望收到有关所有活