输出数据库列中的记录数,并将其作为变量赋值


Outputting the number of records in a database column and assign it as a variable

我想计数id字段在我的用户表在我的当前查询和输出。我如何改变我的查询或输出,以便如果我的用户表中有40个id具有相同的WHERE条件,我可以用变量输出它?

$member = mysqli_query($con,"SELECT * FROM users WHERE `group` IN (2, 3, 4, 5) ORDER BY id DESC LIMIT 1");
$numrows_member = mysqli_num_rows($member);
    if($numrows_member > 0){
        while($row_member = mysqli_fetch_assoc($member)){
            $memberid = $row_member['id'];
            $member_username = $row_member['username'];
        }
    } else {
    $no_members = "No Members Found...";
    }

试试下面的代码:

警告:也重命名组列,因为组是mysql数据库的保留关键字,在示例中我重命名为groupid。

<?php
$member = mysqli_query($con,"SELECT * FROM users WHERE `groupid` IN (2, 3, 4, 5) ORDER BY id DESC LIMIT 1");
$numrows_member = mysqli_num_rows($member);
if($numrows_member > 0){
    $totalRecord=null;
    while($row_member = mysqli_fetch_assoc($member)){
        $memberid = $row_member['id'];
        $member_username = $row_member['username'];
        $group_id = intval($row_member['groupid']);
        if($group_id > 0){ 
            $totalRecord = getTotalRow($con,$group_id);
        }
    }
    echo 'ID : '.$memberid.' UserName : '.$member_username. ' Total records : '.$totalRecord;
} else {
echo $no_members = "No Members Found...";
}
function getTotalRow($con,$id){
    $record=0;
    $result = mysqli_query($con,"SELECT count(id) as total FROM users WHERE groupid = $id ");
    while($row = mysqli_fetch_row($result)){
        echo $record = $row[0];
    }
    return $record;
}
?>