小编E.S*_*raf的帖子

我可以在带有窗口功能的SQL查询中进行分组吗?

我需要让我所在部门的员工薪水最低,而 我是通过反加入来做到这一点的。

     select emp.employee_id,emp.last_name,emp.salary,emp.department_id
     from employees emp
     left join employees sml 
     on sml.department_id = emp.department_id and sml.salary < emp.salary
     where sml.employee_id is null and emp.department_id is not null
Run Code Online (Sandbox Code Playgroud)

但有人告诉我,可以通过使用一次select的 window函数来做到这一点。但是我不能按department_id分组并同时使用它。那是虫子还是我愚蠢?

     SELECT  department_id,
     min(salary) OVER (partition by department_id)  as minsalary
     FROM employees;
     GROUP BY department_id
Run Code Online (Sandbox Code Playgroud)

SQL Developer说00979。00000-“不是GROUP BY表达式”

sql oracle oracle11g

5
推荐指数
3
解决办法
8151
查看次数

标签 统计

oracle ×1

oracle11g ×1

sql ×1