因为该列没有包含在聚合函数或 group by 子句中。_SQL 窗口函数
时间: 2024-04-28 15:23:18 浏览: 77
为什么SQL不许在视图定义ORDER BY子句
可以解决这个问题。窗口函数是一种特殊的函数,它可以在查询结果集中的每一行上执行计算,并返回一个值。它们可以用来计算排名、比率、移动平均值等等。在使用窗口函数时,你可以指定一个 OVER 子句,该子句定义了当前行和窗口的范围。例如,以下是一个使用窗口函数的示例:
SELECT department, employee, salary,
AVG(salary) OVER (PARTITION BY department) as avg_salary
FROM employees;
在这个查询中,窗口函数 AVG 用于计算每个部门的平均工资,而 PARTITION BY 子句用于将每个部门的行分组在一起。这样,你就可以在不使用 GROUP BY 子句的情况下计算每个部门的平均工资。
阅读全文