0

我有一个包含 q1、q2、q3 列的数据表

所以数据可能看起来像

q1    q2    q3
1     1     2
1     2     1
2     3     1

因此,用户的每次提交都有一条记录,并且一条记录包含问题 1,2 和 3 的答案……这可能不是我想做的最佳表格设计!我想从每个问题中获得计数和百分比

所以结果集看起来像

questionNum     responseNum   count   percent
1               1             2       66
1               2             1       33
2               1             1       33
2               2             1       33
2               3             1       33
3               1             2       66
3               2             1       33

这可以在 1 个查询中完成,还是需要 3 个单独的查询?

4

1 回答 1

0

根据我的理解,如果不是进一步解释您的问题,此查询将返回您想要的内容。尝试这个:

SELECT questionNum, responseNum, `count`,
       FLOOR(`count` * 100 / (SELECT SUM(`count`) FROM question WHERE questionNum = b\q.questionNum)) percent
FROM question q
于 2012-11-28T06:38:05.520 回答