簡體   English   中英

MySQL ROW_NUMBER用於多列

[英]MySQL ROW_NUMBER for multiple columns

我有一張桌子,看起來像:

+-------------+--------+------------+
| Employee ID | Salary | Grievances |
+-------------+--------+------------+
| 101         | 70,000 | 12         |
| 102         | 90,000 | 100        |
| ...         | ...    | ...        |
+-------------+--------+------------+

我想找到所有在薪資中排名前十位 ,但在抱怨中排名 倒數前五位的員工。 我(認為我)知道如何使用ROW_NUMBER在SQL Server中執行此操作,但是如何在MySQL中執行此操作? 我已經看到了執行此操作的goto問題 ,但這實際上不適用於多列排序。

如果我理解正確,則可以使用自我加入:

select s.*
from (select t.*
      from t
      order by salary desc
      limit 10
     ) s join
     (select t.*
      from t
      order by grievances asc
      limit 5
     ) g
     on s.employeeid = g.employeeid;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM