除非使用 group by,否则 mySQL 计数只返回一个结果

标签 mysql count group-by

使用 SQL 查询

select u.name,count(u.name) as 'followers'
from user u,follow f
where u.type = 'c' AND f.followee = u.email
group by u.name

为我的数据库中的所有用户获取正确的值,但是,没有按行分组的完全相同的查询只给我第一个值。我是第一次学习 SQL,很难弄清楚这是为什么。

最佳答案

当你使用 count without group by 时,它会计算所有记录并返回 single line 而当你使用 count with group by 时,它将根据用户的姓名对用户进行分组,并返回每个组的计数。

关于除非使用 group by,否则 mySQL 计数只返回一个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40503132/

相关文章:

python - 如何跨多个服务器轻松切换 Django 1.9.x 中的数据库

mysql - SQL SELECT 如何仅获取事件记录

python - 从 pandas groupby 返回聚合数据框

mysql - 使用 PHP 在 MYSQL 中将时间戳与日期匹配

mysql - 如何在 MySQL 中合并同一个表?

PHP MySQL SELECT 查询只返回资源

php - PHP如何只获取MYSQL数据库中指定时间段内的记录?

javascript - 尝试在 React w/Formik 中每次输入字段完成时创建一个计数器

mysql - SQL-显示 null、0 和非当前值

C# LINQ 计算分组依据