我有一个表feedback具有列ans1,ans2,ans3...,各列具有从0到2值I要计数的所有列,其中值为1在前端,我显示 0 为差,1 为良好,2 为优秀。我想统计差评、好评和好评的总数。例如,如果表在 ans1 中有两个 0,在 ans2 中有三个 0,那么总数应该是五个 0。
2 回答
肥皂起泡泡
TA贡献1829条经验 获得超6个赞
一种选择,使用布尔表达式的总和:
SELECT
SUM((ans1 = 0) + (ans2 = 0) + ... + (ansN = 0)) AS poor_count,
SUM((ans1 = 1) + (ans2 = 1) + ... + (ansN = 1)) AS good_count,
SUM((ans1 = 2) + (ans2 = 2) + ... + (ansN = 2)) AS excellent_count
FROM feedback;
富国沪深
TA贡献1790条经验 获得超9个赞
也许双循环可以解决它,
$feedback = $this->db->get('feedback'); //get your data table
$poor = 0; $good = 0; excel=0;
foreach($feedback as $data1){
foreach($data1 as $data2){
if($data2 == 0){
$poor++;
}
if($data2 == 1){
$good++;
}
if($data2 ==2){
$excel++;
}
}
- 2 回答
- 0 关注
- 254 浏览
添加回答
举报
0/150
提交
取消