mysql - GROUP BY 并以相同的值显示一次
问题描述
我想在具有相同值的多行中显示一次
我的查询是这样的
SELECT name,
GROUP_CONCAT(class) class,
COUNT(*) AS total
FROM report
GROUP BY name
和这样的数据
+----+----------+-------+
| ID | NAME | CLASS |
+----+----------+-------+
| 1 | John | 10 |
| 2 | James | 21 |
| 3 | James | 21 |
| 4 | John | 10 |
| 5 | Augie | 22 |
| 6 | Augie | 22 |
| 7 | John | 10 |
+----+----------+-------+
我想做这样的输出,名字会显示一次
Name : John, class : 10, Total : 3
Name : James, class : 21, Total : 2
Name : Augie, class : 22, Total : 2
解决方案
试试这个查询
SELECT name,Class,COUNT(*) AS total FROM report GROUP BY name,Class
推荐阅读
- reactjs - 无法读取未定义的属性“替换”
- css - 在 ASP.NET Core 2.2 应用程序中使用自定义 .otf 字体
- php - 我在 Laravel 框架中多次收到 OAuth2 服务器连接错误
- php - 如何从特征中的一个函数调用函数(父特征中存在两个函数)
- jenkins-pipeline - 没有链接作业的 Jenkins 管道使用
- c++ - 为指针/共享指针等类型重载流<<操作符
- pandoc - 突出显示 Pandoc Revealjs 中的特定代码行
- android - Android 应用无法在运行新版本 Android 的设备上正常运行
- ios - 斯威夫特 | UIButton 导致点击时崩溃
- java - 休眠注释扫描在 Gradle 5.4 下不起作用