withrollup和having
时间: 2024-06-12 19:11:09 浏览: 128
rollup示例
with rollup是MySQL中的一个扩展语法,它可以对查询结果进行分组汇总,并且可以在结果集中添加一行汇总数据。having是用于对分组后的结果进行筛选的语法,它可以在分组后对分组结果进行过滤。
具体来说,with rollup可以在group by语句中使用,例如:
```
SELECT col1, col2, SUM(col3) FROM table GROUP BY col1, col2 WITH ROLLUP;
```
这条语句会对table表中的数据按照col1和col2进行分组,并且对每个分组计算col3的总和。同时,它还会在结果集中添加一行汇总数据,其中col1和col2都为NULL,col3为所有数据的总和。
而having则是在group by语句之后使用的,例如:
```
SELECT col1, SUM(col2) FROM table GROUP BY col1 HAVING SUM(col2) > 100;
```
这条语句会对table表中的数据按照col1进行分组,并且对每个分组计算col2的总和。然后,它会筛选出col2总和大于100的分组结果。
阅读全文