所以我需要一个意见/解决方案来解决下面这个问题。
这份调查问卷有67个问题,用PHP编码并使用数据库(MySQL)。根据设计,数据表如下所示,其中包含ID和问题编号。
所以,
我将生成一份包含这些答案的报告。即我会得到每个问题的均值,中位数并在用户报告屏幕上显示。现在有493行,想要思考一些不会变得更长,更长时间处理的事情。
使过程更容易(可忍受)的任何意见或方法?我应该为计算创建一个类并运行每个问题并将值存储在视图上吗?找到类似问题的答案here,但无法确定。真的很想听到任何想法。
答案 0 :(得分:2)
就个人而言,我会避免使用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;
并使用this solution作为中位数。