我有一个简单的SQL语句,其结果是员工的基本信息。
select emp_name, emp_firstname, emp_location, emp_salary from employees e
where e.emp_location = 'XYZ'
现在,我只想得到一个结果,上述SQL如果所有雇员的工资总额的位置是超过1.000.000欧元。否则,结果应该是空。
我创建了一个select语句,它分析所有雇员的总和并返回NULL或超过1.000.000欧元的SUM值:
select sum(emp_salary) from employees e
where e.emp_location = 'XYZ'
having sum(emp_salary) > 1000000
当我现在尝试合并SQL:
select emp_name, emp_firstname, emp_location, emp_salary from employees e
where e.emp_location = 'XYZ'
having sum(emp_salary) > 1000000
我得到错误ORA-00937不是单组组函数
2条答案
按热度按时间6za6bjd01#
您选择了非聚合字段,但未使用
GROUP BY
子句。通过修复该问题,您的查询应该可以正常工作:hmae6n7t2#
或者,如果希望按地点列出的sum(emp_salary)〉1000000,则: