sql - 对看似冲突的订购要求感到困惑
问题描述
我正在做运动,其中一个步骤说
将经理 ID 添加到薪水之后的上一个结果中。首先按部门 ID(升序)对结果排序,然后在部门**** 内按薪水(降序),然后按薪水内的经理 ID(升序)排序。
所以我可以做到这一点,直到星号(*)。当它说“然后按工资(asc)中的经理ID”时,这甚至意味着什么?就像我在这一点上很困惑 - 我如何按薪水降序排序,然后按升薪排序,以及经理 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
现在我该怎么做?真的很困惑,直到下周我才能从我的讲师那里得到帮助,这太长了,所以任何帮助都将不胜感激。
解决方案
这只是意味着您需要由具有相同薪水的经理订购。通过添加manager
到您的ORDER BY
子句来做到这一点:
ORDER BY department_id ASC, salary DESC, manager_id ASC
推荐阅读
- visual-studio-code - jupyter笔记本中的VS代码?
- ruby-on-rails - 在管理面板 CMS comfy 中创建部分
- python-3.x - 如何使用python从文本文件中提取特定标题下的文本?
- linux - 我得到内核编译错误,但我不能谷歌它
- javascript - 如何从数组中提取两组唯一变量?
- python - 如何在 BuildBot 中使用 GitHubCommentPush
- scala - Spark JDBC 谓词下推禁用不起作用
- python - 在几次成功输出后我正在运行我的代码我现在有这个错误
- xamarin - 我想在 xamarin ios 中访问设备 mac?
- c# - 如何在 mvc C# 中执行 sql 视图并将其结果存储在列表中?