SQL 中用于分组查询的语句是 GROUP BY,它按照指定列或表达式对数据集进行分组,并计算每个组的聚合值,如求和或求平均值。例如,GROUP BY product_name 和 SUM(sales_amount) 可以计算每个产品的总销售额,产生以下结果:product_name, total_sales,其中 product_name 是分组列,total_sales 是每个组的销售额总和。GROUP BY 查询可以嵌套以创建更复杂的分组,例如,嵌套 GROUP BY product_ca

SQL 中用于分组查询的语句
分组查询是一种将数据集按照特定列或表达式进行分组,并计算每个组的聚合值(如求和、求平均值)的查询。在 SQL 中,用于分组查询的主要语句是 GROUP BY。
GROUP BY 语句
GROUP BY 语句的基本语法如下:
SELECT 列名, 聚合函数(列名) FROM table_name GROUP BY 列名
其中:
- 列名:需要分组的列或表达式。
- 聚合函数:应用于每个组的聚合函数,如 SUM()、AVG()、COUNT()。
示例
考虑一个名为 "sales" 的表,其中包含以下列:
基于PHP+MYSQL开发,除了网上书店必备的商品管理、配送支付管理、订单管理、会员分组、会员管理、查询统计和多项商品促销功能,还具有完整的文章、图文、下载、单页、广告发布等网站内容管理功能。系统具有静态HTML生成、UTF-8多语言支持、可视化模版引擎等技术特点,支持多频道调用不同模版和任意设置频道首页,适合建立各种规模的网上书店。系统具有以下主要功能模块: 网站参数设置 - 对网站的一些参数进
| product_id | product_name | sales_amount |
|---|---|---|
| 1 | Apple | 100 |
| 2 | Orange | 200 |
| 3 | Banana | 300 |
| 4 | Apple | 250 |
| 5 | Orange | 150 |
要计算每个产品的总销售额,可以使用以下 GROUP BY 查询:
SELECT product_name, SUM(sales_amount) FROM sales GROUP BY product_name;
查询结果将如下所示:
| product_name | total_sales |
|---|---|
| Apple | 350 |
| Orange | 350 |
| Banana | 300 |
嵌套 GROUP BY
GROUP BY 查询可以嵌套在其他查询中,以创建更复杂的分组。例如,要计算每个产品类别和每个产品的总销售额,可以使用以下嵌套 GROUP BY 查询:
SELECT product_category, product_name, SUM(sales_amount) FROM sales GROUP BY product_category, product_name;
查询结果将如下所示:
| product_category | product_name | total_sales |
|---|---|---|
| Fruits | Apple | 350 |
| Fruits | Banana | 300 |
| Fruits | Orange | 350 |









