被似乎有冲突的订购要求所混淆

时间:2019-02-28 18:55:12

标签: sql oracle

我正在锻炼,其中一个步骤说

  

将经理ID添加到薪水之后的上一个结果中。首先按部门ID(升序)对结果排序,然后按部门****中的薪水(降序)排序,然后按工资中的经理ID(升序)排序。

所以我可以这样做直到星号(*)。当它说“然后按工资(asc)内的经理ID”时,这甚至意味着什么?就像我现在很困惑-如何按薪水降序排序,然后按薪水升序排序,WITHIN经理ID是什么意思?

我当前的代码如下:

select 
 first_name || ' ' || last_name  "Full Name", 
 departments.department_id, 
 salary, job_title, 
 departments.department_name, 
 departments.manager_id   
from jobs
 join employees
on jobs.job_id = employees.job_id
 join departments 
on employees.department_id = departments.department_id 
order by department_id, salary desc

我现在该怎么办?真的很困惑,我的讲师要到下周才能帮上忙,这太长了,因此,不胜感激。

1 个答案:

答案 0 :(得分:2)

这仅意味着您需要按薪水相同的经理进行订购。为此,请在您的manager子句中添加ORDER BY

ORDER BY department_id ASC, salary DESC, manager_id ASC