Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 计算ID的数量_Php_Mysql_Count - Fatal编程技术网

Php 计算ID的数量

Php 计算ID的数量,php,mysql,count,Php,Mysql,Count,我从MySQL查询中得到以下输出: count, cat1id, cat1name, cat2id, cat2name, cat3id, cat3name 10, NULL, NULL, 1000, Main Category, 1001, Sub Category 1 5, 1000, Main Category, 1001, Sub Category 1, 1002, Sub Category 2 50, NULL, NULL, 1000, Main Category, 1003, Anot

我从MySQL查询中得到以下输出:

count, cat1id, cat1name, cat2id, cat2name, cat3id, cat3name 10, NULL, NULL, 1000, Main Category, 1001, Sub Category 1 5, 1000, Main Category, 1001, Sub Category 1, 1002, Sub Category 2 50, NULL, NULL, 1000, Main Category, 1003, Another Category 我想看到的是以下输出的预格式化文本

Main Category (65) + Sub Category 1 (10) ++ Sub Category 2 (5) + Another Category (50) 我不是编程大师,很难理解当在不同的列中提到某个ID时,如何计算该ID的出现次数。我尝试过使用数组,但发现在这种情况下它们很复杂。我想到了一些IF或CASE,在本例中可以使用,但数据库包含2000多个类别

有没有人能给我指出正确的方向,或者给我看一个片段,告诉我如何基于MySQL查询输出请求的数据

提前谢谢

然后试试这个

$query = "SELECT DISTINCT(YourID) FROM YourTbale";

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

    while ($row = $result->fetch_row()) {
      $subQ="Select * from YourTbale" where YourID = $row[0];
        echo "$row[0]( mysqli_num_rows(mysqli_query($con,$subQ)) )"; //$con carries connection string
    }

    $result->close();
}

也许数一数就可以了,我不确定。这里的一些人会提供帮助,但他们可能需要知道Mysql查询,您的数据库的哪个列在这里指定主键???您看到的已经是进行计数的输出。在一个单独的表中,有一列名为“CategoryID”。我数了数。也许这个问题还不够清楚:我想要确定的是从所示的结果中获得所提到的结果输出。这必须用PHP来完成。