- 除去所有重复的最大值和重复的最小值,然后求平均
SELECT avg(salary)
FROM employees
WHERE salary not in (
(SELECT min(salary) FROM employees),
(SELECT max(salary) FROM employees))
- 对于多个重复的最大值和最小值,仅需要除去一个,然后求平均值,那么就可以利用一些数学上的知识帮助计算
SELECT (sum(salary) - max(salary) - min(salary)) / (count(salary)-2)
FROM employees
参考来源:极客教程:SQL除去最大值与最小值求均值
本文介绍了一种SQL技巧,通过排除数据集中的最大值和最小值来计算更准确的平均工资。使用子查询从员工表中找出最高和最低薪资,再计算除去这两个极端值后的平均薪资。适用于数据分析和报表制作。
3049

被折叠的 条评论
为什么被折叠?



