WITH ROLLUP
是 MySQL8 中用于生成汇总行的一种扩展语法。它通常与 GROUP BY 子句一起使用,用于在查询结果中添加总计或分组小计。
当你在查询中使用 WITH ROLLUP
时,数据库会根据 GROUP BY 子句中指定的列生成汇总行,以显示每个分组的合计值。这使得你可以在单个查询中同时获取详细数据和汇总数据。
下面是一个简单的示例,演示了如何在 SQL 查询中使用 WITH ROLLUP
:
SELECT department, SUM(sales) AS total_sales
FROM sales_data
GROUP BY department WITH ROLLUP;
在这个示例中,假设我们有一个包含销售数据的表格 sales_data
,其中包括部门和销售额。通过在 GROUP BY 子句中添加 WITH ROLLUP
,查询将返回每个部门的销售额,并在最后添加一个总计行,显示所有部门的销售额总和。