我有一个 Oracle SQL 查询,用于FETCH FIRST
查找 PeopleSoft 数据库中年薪最高的员工。
SELECT A.EMPLID, A.ANNUAL_RT
FROM PS_EMPLOYEES A
ORDER BY A.ANNUAL_RT DESC
FETCH FIRST ROW WITH TIES;
EMPLID ANNUAL_RT
20218 100000
10300 100000
26992 100000
17864 100000
我想按 EMPLID 对结果进行排序。但是,由于我使用的是FETCH FIRST 1 ROW WITH TIES
,添加EMPLID
到我的ORDER BY
子句将我的结果限制为 ID 号最低的 1 名员工。
SELECT A.EMPLID, A.ANNUAL_RT
FROM PS_EMPLOYEES A
ORDER BY A.ANNUAL_RT DESC, A.EMPLID ASC
FETCH FIRST 1 ROW WITH TIES;
EMPLID ANNUAL_RT
10300 100000
如何在不影响返回的行的情况下对结果进行排序FETCH FIRST
?
EMPLID ANNUAL_RT
10300 100000
17864 100000
20218 100000
26992 100000