现在有个需求,是做一个心理测试类的小程序,请问下各位大佬,该怎么设计这个数据库表格,
求各位大佬给点思路。
要看你是什么类型的心理测试,需要什么功能。
一个简单的模式是,一些选择题,而下面一个题目取决于上一个题目的选择的结果。
比如:
测试下你是不是一个勇敢的人
(1)你平时喜欢在家看电视还是上网
a 看电视 b 上网
如果选择a跳转到第二题,否则跳转到第三题
(2)你喜欢看什么类型的电视:
a 新闻 b电视剧 ...
(3)你喜欢上什么网站
a 社交网站 b 电影
...
到了最后,是跳转到结果页面
比如
你选择了a,说明你是一个胆小的人,你必须在熟悉的环境里才能感觉舒适……
你选择了b,说明你比较勇敢,你敢于冒险,……
假设你想做这个网站,你需要的数据库的表应该有这么几个:
测试表
id 测试id
name 测试的标题(比如测试下你是不是一个勇敢的人)
firstid 第一个题目的id
resultid 结果的id
问题表
id 表示题目的序号
content 表示题目的内容,包括题干
optiona
optionb
optionc
null表示没有这个选项
...
表示a b c 等不同的选项
gotoa
gotob
gotoc
...
表示跳转的题目的id,option有值,但是这里null表示跳转到答案
结果表
id 结果表的id
resulta 选择最后一个问题的a的答案
resultb 选择最后一个问题的b的答案
...
能详细点吗,怎么个心理测试。
如果是根据一堆题,然后答题,最后得出结果的话,这个数据库设计的应该就比较简单两张表,一张存储题目(标题,内容),一张存储用户的测试结果。
但是具体测试结果是怎么判定的,看你使用的算法,你是用机器学习,还是做简单点的分类。
简单点就是给每个题目一个权重分数,然后综合计算,总分有对应区间的分类。