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

如何计算列中包含特定数字的行数

如何计算列中包含特定数字的行数

PHP
jeck猫 2022-09-25 20:58:25
我想回显一个包含相同特定数字的行数的计数。我的数据库中有一个名为“member_group_id”的列。例如,领导组 ID 为“4”,某些成员在 db 中分配了此编号,因此我想执行如下操作:$countLeaders = count($row['member_group_id'] == 4);我该怎么做?这是我的数据库查询:$result = mysqli_query($con,"SELECT * FROM core_members WHERE member_group_id IN (4, 7, 8, 6, 11) ORDER BY     CASE member_group_id         WHEN '4' THEN 1          WHEN '7' THEN 2        WHEN '8' THEN 3        WHEN '6' THEN 4        WHEN '11' THEN 5     END ASC, name ASC");这是我的实际循环和期望的结果:while($row = mysqli_fetch_array($result)){            $group = $row['member_group_id'];    $countLeaders = count($group == 4);}echo "<span>" . $countLeaders . " Leaders</span>";
查看完整描述

3 回答

?
杨魅力

TA贡献1811条经验 获得超5个赞

您只需要测试您感兴趣的值,然后将其添加到累加器中(如果它是正确的值)$row['member_group_id']


$countLeaders = 0;

while($row = mysqli_fetch_assoc($result)){        

    if ($row['member_group_id'] == '4') {

        $countLeaders++;

    }


    // other code if you have it

}


echo "<span>" . $countLeaders . " Leaders</span>";



查看完整回答
反对 回复 2022-09-25
?
慕标琳琳

TA贡献1830条经验 获得超9个赞

如果我理解,你从你的查询中得到的所有结果都是一个数组,类似于:pg_fetch_all


$result = [

    [

        'id'     => 'whatever',

        'and'    => 'whatever',

        'other'  => 'whatever'

        'fields' => 'whatever'

        'member_group_id' => 1,

    ],

    [

        'id'     => 'whatever',

        'and'    => 'whatever',

        'other'  => 'whatever'

        'fields' => 'whatever'

        'member_group_id' => 3,

    ],

    [

        'id'     => 'whatever',

        'and'    => 'whatever',

        'other'  => 'whatever'

        'fields' => 'whatever'

        'member_group_id' => 1,

    ],

]

您想知道有多少条记录['member_group_id'] == 1


您可以使用


count(

    array_filter(

        function($item) { return ($item['member_group_id'] == 1); },

        $result

    )

)

array_filter遍历数组并仅保留函数返回 true 的项。


查看完整回答
反对 回复 2022-09-25
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

你不能在同一级别有多个时间相同键的数组,我解释说:


$test['hello'] = 1;

$test['hello'] = 5;

因此,键将仅包含 。如果要计算具有相同值的所有键,可以编写如下代码:hello5


$array = array('1', '1', '2', 'test' => '1', '1', '2', '3', '1', '9');

$count = \count(array_keys($array, '1'));

// output of $count is 5

搜索与指定值对应的所有键,然后对所有键进行计数。


查看完整回答
反对 回复 2022-09-25
  • 3 回答
  • 0 关注
  • 89 浏览

添加回答

举报

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