我目前正在制作用户可以提供反馈的反馈系统,在我的情况下,我必须计算每个选项的百分比,例如问题有很多选项我应该显示每个选项的百分比,例如,有多少人选择了选项a,b,c,d等等。
我的答案表
user_id question_id option(selected by user)
1 1 2
2 1 1
3 1 4
4 1 3
现在我想要实现的是
question1
option1(25% people selected option1)
option2(25% people selected option2)
option3(25% people selected option3)
option4(25% people selected option4)
上述输出的查询应该是什么,请有人帮忙。
答案 0 :(得分:1)
试试这个,
您将通过 question_id = 1
获得每个问题选项的百分比DB::table('answers')->where('question_id',1)
->select('option',DB::raw('count(*) *100 / (select count(*) from answers) as count'))
->groupBy('option')
->get();