我有一个包含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个单独的查询?
答案 0 :(得分:0)
根据我的理解,此查询会返回您想要的内容(如果不是),而不是进一步解释您的问题。 试试这个:
SELECT questionNum, responseNum, `count`,
FLOOR(`count` * 100 / (SELECT SUM(`count`) FROM question WHERE questionNum = b\q.questionNum)) percent
FROM question q