php - 如何计算列中相同结果的数量?

标签 php mysql count

我开发了一个数据库,其中有三组列: - 用户名 - 感觉 - 备注

关于感受的条目都是一样的,因为它们是从下拉菜单中选择的。我正在寻找一种方法来计算相同结果的数量,然后用 PHP 在网站上回显它,但我无法得到比这更进一步的方法:

<?php
$con=mysqli_connect("localhost","username","password", "database");
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$query = "SELECT COUNT(*) FROM thefeels WHERE feeling = 'Happy'";
$result = mysqli_query($con, $query);

var_dump($result)
?>

在这段代码中,我想计算列中出现快乐的次数,但即使那样也不起作用。如何计算相同结果在列中出现的次数? 所以如果 Happy 出现了四次而 Sad 出现了两次,它应该显示:

Happy: 4
Sad: 2

最佳答案

这是一项基本的计数行任务。您会在 official documentation 中找到一些示例.

在您的情况下,它将是:

$query = "SELECT feeling, COUNT(*) as count FROM thefeels GROUP BY feeling";
$result = mysqli_query($con, $query);

现在您可以使用“老派”方式(您会在许多教程中找到):

while ($row = mysqli_fetch_assoc($result)) {
    echo "{$row['feeling']}: {$row['count']}<br>";
}

或者向前推进,将数据获取与数据处理和数据输出分开:

$feelingCounts = $con->fetch_all(MYSQLI_ASSOC);

然后用获取的数据做任何你想做的事。例如:

var_dump($feelingCounts);

关于php - 如何计算列中相同结果的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50572199/

相关文章:

php - DQL 的嵌套条件

PHP 的 '===' 运算符

php - 如何将拉丁字符存储在数组中并成功将它们检索为拉丁字母?

swift - 如果 SKAction 重复 Action 计数结束

windows - 在 Windows 批处理中计算 Var

sql-server - Microsoft T-SQL 计算连续记录

php - 无需离开页面/网站即可提交外部表单

php - 在 PHP 5.2 之前替代 json_decode

c++ - MySQL,C++ : Need Blob size to read blob data

javascript - 通过window.prompt将一些数据发布到mysql数据库的特定字段(代码运行不正常)