Php 为不同的值获取num_行一次

Php 为不同的值获取num_行一次,php,mysql,mysqli,Php,Mysql,Mysqli,我对PHP非常陌生,我正在尝试从行数数据库中获取结果。我使用了以下给定的方法: $result = $mysqli->query("SELECT * FROM donors WHERE blood_group = 'A+'"); $Apositive = $result->num_rows; 现在你可以看到,我必须对每个血型执行这个查询 有没有更简单的方法以一种方式获得所有这些结果 SELECT blood_group, count(*) AS donor_count FROM

我对PHP非常陌生,我正在尝试从行数数据库中获取结果。我使用了以下给定的方法:

$result = $mysqli->query("SELECT * FROM donors WHERE blood_group = 'A+'");
$Apositive = $result->num_rows;
现在你可以看到,我必须对每个血型执行这个查询

有没有更简单的方法以一种方式获得所有这些结果

SELECT blood_group, count(*) AS donor_count
  FROM donors
 GROUP BY blood_group
将返回一系列结果,每个
血型组一个
,并在
捐献者计数
中显示该组的捐献者计数;然后你可以在结果集上循环

编辑

$query = "SELECT blood_group, count(*) AS donor_count
      FROM donors
     GROUP BY blood_group";

if ($result = $mysqli->query($query)) {

    /* fetch associative array */
    while ($row = $result->fetch_assoc()) {
        printf (
            "Blood Group: %s has %d donors)\n", 
            $row["blood_group"], 
            $row["donor_count"]
        );
    }
}
将返回一系列结果,每个
血型组一个
,并在
捐献者计数
中显示该组的捐献者计数;然后你可以在结果集上循环

编辑

$query = "SELECT blood_group, count(*) AS donor_count
      FROM donors
     GROUP BY blood_group";

if ($result = $mysqli->query($query)) {

    /* fetch associative array */
    while ($row = $result->fetch_assoc()) {
        printf (
            "Blood Group: %s has %d donors)\n", 
            $row["blood_group"], 
            $row["donor_count"]
        );
    }
}
将返回一系列结果,每个
血型组一个
,并在
捐献者计数
中显示该组的捐献者计数;然后你可以在结果集上循环

编辑

$query = "SELECT blood_group, count(*) AS donor_count
      FROM donors
     GROUP BY blood_group";

if ($result = $mysqli->query($query)) {

    /* fetch associative array */
    while ($row = $result->fetch_assoc()) {
        printf (
            "Blood Group: %s has %d donors)\n", 
            $row["blood_group"], 
            $row["donor_count"]
        );
    }
}
将返回一系列结果,每个
血型组一个
,并在
捐献者计数
中显示该组的捐献者计数;然后你可以在结果集上循环

编辑

$query = "SELECT blood_group, count(*) AS donor_count
      FROM donors
     GROUP BY blood_group";

if ($result = $mysqli->query($query)) {

    /* fetch associative array */
    while ($row = $result->fetch_assoc()) {
        printf (
            "Blood Group: %s has %d donors)\n", 
            $row["blood_group"], 
            $row["donor_count"]
        );
    }
}


这似乎是最好的解决办法。。我尝试了它,它返回了这个数组
mysqli\u结果对象([current\u field]=>0[field\u count]=>2[length]=>num\u rows]=>10[type]=>0)
接下来我该怎么做?你需要在结果集上循环,依次获取每个结果。。。。非常基本的PHP101-太棒了!!它打印出数据库中存储的所有血型
(A+)(A-)(AB+)(AB-)(B+)(B-)(O+)(O-)
,但无法计算如何获得行数。。我尝试了
printf(“%I(%s)\n)”,$row->num_rows,$row[“blood_group]”)但是运气不好,它只是打印我提到的内容,那么你是如何让它打印出这些组的呢?您迭代了结果集,依次获取每个结果并显示
blood\u group
。。。。。修改您的显示,以便您同时显示
捐献者计数
我曾尝试采用这种方式
$row[“血型”],捐献者计数
,但现在我明白了。非常感谢你!!这似乎是最好的解决办法。。我尝试了它,它返回了这个数组
mysqli\u结果对象([current\u field]=>0[field\u count]=>2[length]=>num\u rows]=>10[type]=>0)
接下来我该怎么做?你需要在结果集上循环,依次获取每个结果。。。。非常基本的PHP101-太棒了!!它打印出数据库中存储的所有血型
(A+)(A-)(AB+)(AB-)(B+)(B-)(O+)(O-)
,但无法计算如何获得行数。。我尝试了
printf(“%I(%s)\n)”,$row->num_rows,$row[“blood_group]”)但是运气不好,它只是打印我提到的内容,那么你是如何让它打印出这些组的呢?您迭代了结果集,依次获取每个结果并显示
blood\u group
。。。。。修改您的显示,以便您同时显示
捐献者计数
我曾尝试采用这种方式
$row[“血型”],捐献者计数
,但现在我明白了。非常感谢你!!这似乎是最好的解决办法。。我尝试了它,它返回了这个数组
mysqli\u结果对象([current\u field]=>0[field\u count]=>2[length]=>num\u rows]=>10[type]=>0)
接下来我该怎么做?你需要在结果集上循环,依次获取每个结果。。。。非常基本的PHP101-太棒了!!它打印出数据库中存储的所有血型
(A+)(A-)(AB+)(AB-)(B+)(B-)(O+)(O-)
,但无法计算如何获得行数。。我尝试了
printf(“%I(%s)\n)”,$row->num_rows,$row[“blood_group]”)但是运气不好,它只是打印我提到的内容,那么你是如何让它打印出这些组的呢?您迭代了结果集,依次获取每个结果并显示
blood\u group
。。。。。修改您的显示,以便您同时显示
捐献者计数
我曾尝试采用这种方式
$row[“血型”],捐献者计数
,但现在我明白了。非常感谢你!!这似乎是最好的解决办法。。我尝试了它,它返回了这个数组
mysqli\u结果对象([current\u field]=>0[field\u count]=>2[length]=>num\u rows]=>10[type]=>0)
接下来我该怎么做?你需要在结果集上循环,依次获取每个结果。。。。非常基本的PHP101-太棒了!!它打印出数据库中存储的所有血型
(A+)(A-)(AB+)(AB-)(B+)(B-)(O+)(O-)
,但无法计算如何获得行数。。我尝试了
printf(“%I(%s)\n)”,$row->num_rows,$row[“blood_group]”)但是运气不好,它只是打印我提到的内容,那么你是如何让它打印出这些组的呢?您迭代了结果集,依次获取每个结果并显示
blood\u group
。。。。。修改您的显示,以便您同时显示
捐献者计数
我曾尝试采用这种方式
$row[“血型”],捐献者计数
,但现在我明白了。非常感谢你!!