PHP问卷计算设计
因此,我需要一个关于以下问题的意见/解决方法 这个问卷有67个问题,用PHP编码,使用数据库(MySQL)。通过设计,数据表如下所示,其中包含ID和问题编号 所以 我将生成一份包含这些答案的报告。i、 我将得到每个问题的平均值、中位数,并在用户报告屏幕上显示它们。现在有493行,我们想思考一些不会越来越长的时间来处理的事情 有什么意见或方法可以使过程更容易(可以忍受)吗?我是否应该为计算创建一个类,为每个问题运行,并将值存储在视图中?找到了类似问题的答案,但无法确定。我真的很想听听你的想法PHP问卷计算设计,php,mysql,Php,Mysql,因此,我需要一个关于以下问题的意见/解决方法 这个问卷有67个问题,用PHP编码,使用数据库(MySQL)。通过设计,数据表如下所示,其中包含ID和问题编号 所以 我将生成一份包含这些答案的报告。i、 我将得到每个问题的平均值、中位数,并在用户报告屏幕上显示它们。现在有493行,我们想思考一些不会越来越长的时间来处理的事情 有什么意见或方法可以使过程更容易(可以忍受)吗?我是否应该为计算创建一个类,为每个问题运行,并将值存储在视图中?找到了类似问题的答案,但无法确定。我真的很想听听你的想法 就我
就我个人而言,我会避免使用67列宽的表,而是使用带有两列主键的3列表
ID | Q | Result
1 | 1 | 1
1 | 2 | 3
1 | 3 | 2
...
4 | 5 | 4
然后运行统计数据;这将是67倍长,但您的统计数据都将是主键查找。任何少于几百万行的东西都会非常快
哦,使用mysql进行统计,它擅长这类事情。例如:
SELECT AVG(Result) WHERE Q = 1;
并用于中间值 请参阅“正常”谢谢您的评论。我也不会使用它,但不能改变代码或结构;如果你正在寻找显示快速统计数据的替代方法;是的,创建一个stats表,运行上面的stats查询,并在每次插入新记录时存储它们,然后引用它。你当然可以对均值进行增量更新,但我不认为你可以增量计算中值。