Ms-Access

MS-Access RANK() 函式

  • February 10, 2021

我在 Access 中有一個這樣的表:

ID |  Op_ID  
1  |  1  
1  |  2  
2  |  3  
3  |  4  
3  |  5  
3  |  6  

是否有一個我可以在 Access 中執行的 SELECT 查詢,它會給我這樣的東西?:

ID |  Count(ID)  
1  |  1  
1  |  2  
2  |  1  
3  |  1  
3  |  2  
3  |  3 

所以基本上我想要一個每次 ID 更改時循環遍歷 ID 的 ID 計數。

此查詢模擬 RANK() 函式。

SELECT T1.ID, (SELECT COUNT(*) 
              FROM YOUR_TABLE T2 
              WHERE T1.ID = T2.ID AND T1.OP_ID >= T2.OP_ID) AS Rank 
FROM YOUR_TABLE T1
ORDER BY ID, OP_ID

只有當有一個唯一的 ID 欄位允許計算以下記錄時,它才有效:

T1.OP_ID >= T2.OP_ID

在此處輸入圖像描述

引用自:https://dba.stackexchange.com/questions/174936