gpt4 book ai didi

mysql - 如何在 MySQL 列中查找相同值的最高计数

转载 作者:行者123 更新时间:2023-12-01 00:21:35 26 4
gpt4 key购买 nike

我想在其中一列中找到最常见值的计数。例如,我的表格如下所示:

id | item | color
________________________________________________________
1 | APPLE | RED
2 | PEAR | GREEN
3 | APPLE | GREEN
4 | ORANGE| ORANGE
5 | APPLE | RED
6 | APPLE | YELLOW
7 | ORANGE| ORANGE

我希望结果显示:

There are 4 counts of APPLE

因为有 4 个“APPLE”,只有一个“PEAR”和两个“ORANGE”,所以只会显示最高计数。

最佳答案

要获得您指定的结果,您可以指定一个虚拟字段并使用 CONCAT()像这样将位连接在一起:

SELECT
CONCAT('There are ', COUNT(item), ' counts of ', item) as your_result
FROM yourtable
GROUP BY item
ORDER BY COUNT(item) DESC
LIMIT 1

结果:

There are 4 counts of APPLE


注意:

由于您在这个问题中标记了 PHP,因此最好记住数据库存储信息,并且您的 PHP 代码/HTML 会将这些数据呈现给用户。您应该尽可能将这些层分开,这意味着您不应该在结果中像这样格式化它们,而应该只从 MySQL 返回原始数据(项目名称和计数),然后使用 PHP 来呈现它。

在这种情况下,您应该使用 other answers 之一在这里并简单地使用 PHP 输出格式化结果:

// your query, example:
$result = $pdo->fetch(PDO::FETCH_ASSOC);
echo 'There are ' . $result['count'] . ' counts of ' . $result['item'];

关于mysql - 如何在 MySQL 列中查找相同值的最高计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24643493/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com