sql - 查找每个 GROUP BY 结果中的行数

标签 sql database group-by

我有一个数据库,可以告诉每个系统当前和新的型号。 (每一行都有系统名称、当前模型和新模型)我需要按当前模型和新模型对结果进行分组。因此,如果当前模型和新模型相同,我想要一个结果。我已经做到了这一点,但我还需要知道每组中有多少个系统。我怎样才能做到这一点?我正在使用 CI

这是我的查询

$query2 = $this->db->query('SELECT * FROM rollout_systems WHERE scope_ID = '.$id.'  GROUP BY EAM_Model, new_Model');

(EAM_Model = 当前型号)

不知道我说得够不够清楚。我需要能够显示当前系统、新系统以及该组中的系统数量。

因此,如果 3 行有“blah”作为当前系统,“blahblah”作为新系统,我想说的是 当前: 布拉 新:巴拉巴拉 系统数量:3

最佳答案

在同一个语句中执行 select * 和 group by 是没有意义的。您分组所依据的列需要位于您的选择中,但您的选择中应该有一个像 count(*) 这样的聚合函数。我不确定我完全理解你想要做什么,但我认为你想要类似的东西:

SELECT EAM_Model, new_Model, count(*)
FROM rollout_systems 
WHERE scope_ID = '.$id.'              
GROUP BY EAM_Model, new_Model

关于sql - 查找每个 GROUP BY 结果中的行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9184290/

相关文章:

mysql - 只有成绩最好的学生

php - 构造SQL语句时插值(使用{}波浪括号)和拼接(.,或点)的区别

SQL - 使用适用于多行的 WHERE 进行选择

.net - 我有数十万页需要扫描和记录

mysql分组和排序而不使用最外面的order by

MySQL SELECT DISTINCT ORDER BY问题

mysql - 除以下顺序外

c++ - 更改数据库连接后如何更新 QSqlTableModel

mysql - 如何使用 ReactJS 前端在数据库中存储密码信息?

python - Django 按小时分组