Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

MySQL 教程

MySQL 主页 MySQL 简介 MySQL RDBMS

MySQL SQL

MySQL SQL MySQL SELECT MySQL WHERE MySQL AND, OR, NOT MySQL ORDER BY MySQL INSERT INTO MySQL NULL 值 MySQL UPDATE MySQL DELETE MySQL LIMIT MySQL MIN 和 MAX MySQL COUNT, AVG, SUM MySQL LIKE MySQL 通配符 MySQL IN MySQL BETWEEN MySQL 别名 MySQL 连接 MySQL INNER JOIN MySQL LEFT JOIN MySQL RIGHT JOIN MySQL CROSS JOIN MySQL 自连接 MySQL UNION MySQL GROUP BY MySQL HAVING MySQL EXISTS MySQL ANY, ALL MySQL INSERT SELECT MySQL CASE MySQL 空值函数 MySQL 注释 MySQL 运算符

MySQL 数据库

MySQL 创建数据库 MySQL 删除数据库 MySQL 创建表 MySQL 删除表 MySQL 修改表 MySQL 约束 MySQL 非空 MySQL 唯一 MySQL 主键 MySQL 外键 MySQL 检查 MySQL 默认 MySQL 创建索引 MySQL 自动递增 MySQL 日期 MySQL 视图

MySQL 参考

MySQL 数据类型 MySQL 函数

MySQL 例子

MySQL 例子 MySQL 编辑器 MySQL 测验 MySQL 练习 MySQL 证书

MySQL GROUP BY 语句


MySQL GROUP BY 语句

The GROUP BY 语句将具有相同值的行的分组到汇总行中,例如“查找每个国家/地区的客户数量”。

GROUP BY 语句通常与聚合函数(COUNT()MAX()MIN()SUM()AVG())一起使用,按一个或多个列对结果集进行分组。

GROUP BY 语法

SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);

演示数据库

下面是 Northwind 示例数据库中“Customers”表的选取部分

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden


MySQL GROUP BY 示例

以下 SQL 语句列出了每个国家/地区的客户数量

示例

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country;
自己试试 »

以下 SQL 语句列出了每个国家/地区的客户数量,按从高到低排序

示例

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
ORDER BY COUNT(CustomerID) DESC;
自己试试 »

演示数据库

下面是 Northwind 示例数据库中“Orders”表的选取部分

OrderID CustomerID EmployeeID OrderDate ShipperID
10248 90 5 1996-07-04 3
10249 81 6 1996-07-05 1
10250 34 4 1996-07-08 2

以及“Shippers”表的选取部分

ShipperID ShipperName
1 Speedy Express
2 United Package
3 Federal Shipping

使用 JOIN 的 GROUP BY 示例

以下 SQL 语句列出了每个运输商发送的订单数量

示例

SELECT Shippers.ShipperName, COUNT(Orders.OrderID) AS NumberOfOrders FROM Orders
LEFT JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID
GROUP BY ShipperName;
自己试试 »

测试您的练习

练习

列出每个国家/地区的客户数量。

SELECT (CustomerID),
Country
FROM Customers
;

开始练习


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.