【问题标题】:PHP/MySQL - How to count number of occurencies [duplicate]PHP / MySQL - 如何计算出现次数[重复]
【发布时间】:2015-12-18 19:51:18
【问题描述】:

这是我的 MySQL 表的结构。

我有很多结果。他们中的许多人拥有相同的Brand,例如他们中的许多人拥有Brand - Orrange,其中许多人拥有Brand - OddibossBrand - Guma

所以我的问题是我怎样才能像这样显示它们:

我想我必须使用while loop

$r = mysql_query("SELECT * FROM `products`");

while($rowi = mysql_fetch_array($r))
        {

        $id = $rowi['id'];
        $Title = $rowi['Title'];
        $Brand = $rowi['Brand'];
        }

因此,通过这个 MySQL 查询,我可以获取所有结果,但我无法将它们分组为 3 个结果,显示每个人有多少次发生。

我希望你明白我需要什么。

【问题讨论】:

  • 你真的不应该使用 mysql_ 函数

标签: php mysql


【解决方案1】:

这个查询应该这样做:

SELECT Brand, COUNT(*) AS count 
FROM products 
GROUP BY Brand

它应该产生这些结果:

+----------+-------+
| Brand    | count |
+----------+-------+
| Orange   | 23    |
| Oddiboss | 342   |
| Guma     | 2     |
+----------+-------+

you really shouldn't be using the MySQL extension 用于访问数据库,以下是获取这些结果的方法:

$r = mysql_query("SELECT Brand, COUNT(*) AS count FROM `products` GROUP BY Brand");   
while($row = mysql_fetch_array($r))
{
    echo $row['Brand'] . ' ' . $row['count'] . "<br />\n";
}

【讨论】:

  • 请将回显结果添加到您的答案中。
  • 我需要echo 结果,这样我才能看到它。
  • @TonyStark - 你不知道如何运行查询?
  • 我不明白你的问题
  • 如何显示结果,我应该使用while循环吗?
【解决方案2】:

您应该按品牌列分组如下:

Select Brand, COUNT(*) AS count FROM products group by Brand

【讨论】:

  • 我怎样才能显示它们?
【解决方案3】:
$sql = SELECT Brand, COUNT(*) AS count FROM products GROUP BY Brand
[...]
echo $row['COUNT(*)'];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-18
    • 2017-12-24
    • 1970-01-01
    • 2012-06-11
    相关资源
    最近更新 更多