php - 使用 PHP 在 SQL 列中输出不同的值

标签 php mysql sql

我有一个包含两列(缩短)的表:“名称”和“类别”。

我想输出不同类别的数量。例如:运动:5,房屋:10。

我用的是这个:

$test = mysqli_query($con,"SELECT category, COUNT(category) as count FROM tablename GROUP BY category ORDER BY count DESC");

然后我在 SQL Shell 中运行代码,但我不知道如何在 PHP 中输​​出它。我在Google上上下下搜索都没有成功的解决方案。

有什么帮助吗?

我想以表格格式输出。

编辑:这是我的完整代码:(表名已更改,$con已删除)

$test = mysqli_query($con,"SELECT DISTINCT lkategori, COUNT(lkategori) as count FROM tablename GROUP BY lkategori ORDER BY count DESC");

while($row = mysql_fetch_array($test)) {
    echo $row['lkategori'] . ":" . $row['count'];
    die("test");
}       

最佳答案

$test = mysqli_query($con,"SELECT DISTINCT lkategori, COUNT(lkategori) as count FROM tablename GROUP BY lkategori ORDER BY count DESC");

echo "<table border='1'>";
    while($row = mysqli_fetch_array($test)) {
        echo "<tr>";
        echo "<td>" . $row['lkategori'] . "</td>";
        echo "<td>" . $row['count'] . "</td>";
        echo "</tr>";
    }
echo "</table>";

这会将sql语句返回的所有类别和计数输出到一个表中。另外,作为旁注,您应该研究一下 PDO。

编辑:为了确保您确实获得了不同的值,您应该在 sql 语句中使用 DISTINCT 关键字:

$test = mysqli_query($con,"SELECT DISTINCT category, COUNT(category) as count FROM tablename GROUP BY category ORDER BY count DESC");

关于php - 使用 PHP 在 SQL 列中输出不同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20192728/

相关文章:

mysql - 如何用符号id编写请求sql

php - yii : Trying to get property of non-object

php - 通过单击 jquery 链接强制下载 Word 文档、pdf、xls 等

mysql - 使用多个 JOIN 优化 SQL 查询

mysql - SQL 和 Delphi : recursive mechanism for creating a tree from a table

mysql - SQL 删除时间戳早于(现在 - x 天)的所有行,但保留最近的 n 条记录

php - 'uses' 关键字对于 Laravel 路由意味着什么?

PHP 到 UML 类图

php - MySql复杂查询统计每个人的订单

用于更新的 MySql UNION