Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.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使用MySQL COUNT()函数_Php_Sql - Fatal编程技术网

如何使用PHP使用MySQL COUNT()函数

如何使用PHP使用MySQL COUNT()函数,php,sql,Php,Sql,我已经尝试这个代码一段时间了,我想不出来 <?php $link = mysqli_connect("localhost", "h4g54453g5234", "23j4hbjh243v535", "3j45hv6j3h45v645"); if($link === false){ die("ERROR: Could not connect. " . mysqli_connect_error()); } $sql = 'SELECT COUNT(*) FROM users WH

我已经尝试这个代码一段时间了,我想不出来

   <?php
$link = mysqli_connect("localhost", "h4g54453g5234", "23j4hbjh243v535", "3j45hv6j3h45v645");
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}
$sql = 'SELECT COUNT(*) FROM users WHERE phone=9876543210 AND status=1';
if($result = mysqli_query($link, $sql)){
    if(mysqli_num_rows($result) > 0){
        while($row = mysqli_fetch_array($result)){
echo "" . $row['COUNT(*)'] . "";                  
        }
        mysqli_free_result($result);
    } else{
        echo "No records matching your query were found.";
    }
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
mysqli_close($link);

?>

表格样本

上述代码的结果将为“4”,因为“状态”列只有4个数据,数字为“1”

现在我可以使用echo$row['COUNT(*');显示数字“4”

但是,我想展示如下结果 echo“$status1;(将显示“4”) echo“$status2;(将显示“4”) echo“$status3;(将显示“2”)

我该怎么做?
使用上述代码,我只能显示值为1的状态列的结果。

选择状态,计数(*)作为phone='9876543210'按状态分组的人员计数
@Nick,这显示所有状态的结果,您能告诉我如何仅回显状态“3”的计数吗?
选择计数(*)从phone='9876543210'和status=3
@Nick的联系人那里,谢谢你的回复,这真的很有效。但是我也想在同一页上显示status 1和status 2的结果,就像status 3一样。我怎么能同时显示所有状态,但像echo$status1;echo$status2;echo$status3;等等。这显示了所有状态的结果,你能打电话吗l告诉我如何仅回显状态“3”的计数,例如?使用where子句。但是,如果我的用户where status=3,它将显示多个电话号码的结果。我只想显示一个电话号码的状态,即“9876543210”“。不仅是一种状态,我还想显示所有0、1、2和3的状态,以便添加
WHERE phone='9876543210'
condition@Pajfs An,是的,这就是我现在正在做的。但结果显示为一个数组。结果是“141051”。14、10、5、1是不同的值。如何只回显14?像echo$status1;echo$status2;echo$status3;等
SELECT status, phone, COUNT(*) AS count FROM people GROUP BY phone, status

SELECT status, phone, COUNT(*) AS count FROM people WHERE status=3 GROUP BY phone, status

SELECT status, phone, COUNT(*) AS count FROM people WHERE phone='9876543210' GROUP BY phone, status