为了账号安全,请及时绑定邮箱和手机立即绑定

想要计算 MySql 中值为“1”的整个表

想要计算 MySql 中值为“1”的整个表

PHP
Qyouu 2021-12-03 10:29:22
我有一个表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;


查看完整回答
反对 回复 2021-12-03
?
富国沪深

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++;

        }

    }


查看完整回答
反对 回复 2021-12-03
  • 2 回答
  • 0 关注
  • 254 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信