mysql里groupby和having
时间: 2023-07-09 19:33:44 浏览: 131
python-mysql day04.txt
`GROUP BY` 和 `HAVING` 都是 MySQL 数据库中用于查询数据的子句。
`GROUP BY` 语句用于将查询结果按照一个或多个列分组,以便进行聚合操作,如计算每组的总数、平均数等。例如,以下查询将按照 `department` 列分组并计算每组的平均工资:
```
SELECT department, AVG(salary)
FROM employees
GROUP BY department;
```
`HAVING` 语句用于筛选分组后的数据,只返回满足特定条件的组。通常与 `GROUP BY` 一起使用。例如,以下查询将返回平均工资大于 5000 的部门:
```
SELECT department, AVG(salary)
FROM employees
GROUP BY department
HAVING AVG(salary) > 5000;
```
需要注意的是,`HAVING` 子句中的条件应该基于聚合计算而非原始数据列。如果需要基于原始数据列进行筛选,则应该使用 `WHERE` 子句。
阅读全文