在MS Access 實現行號功能
「ROW_NUMBER OVER (PARTITION BY)」函數,常用於在SQL 中分配連續編號在SQL結果集的分割區內,可以使用自連線在Microsoft Access 中進行模擬聚合。
考慮以下資料集:
DOC_TYPE Ino 3a 1800xxc1 3b 1810xxc2 3c 1700xxc3 3a 1700xxc4 3a 1800xxc5 3a 1800xxc6 3b 1800xxc7
要複製「ROW_NUMBER」行為,我們可以使用以下查詢:
SELECT t1.DOC_TYPE, t1.Ino, COUNT(*) AS RowNum FROM YourTable AS t1 INNER JOIN YourTable AS t2 ON t2.DOC_TYPE = t1.DOC_TYPE AND t2.Ino <= t1.Ino GROUP BY t1.DOC_TYPE, t1.Ino ORDER BY 1, 3
此查詢在DOC_TYPE 列上自連接表並對Ino 值進行小於或等於比較。然後,它按 DOC_TYPE 和 Ino 聚合行,計算每個唯一的 DOC_TYPE、Io 對的出現次數。分配給 RowNum 別名的結果計數表示連續行號。
將此查詢應用於範例資料將產生以下結果:
DOC_TYPE Ino RowNum 3a 1800xxc1 1 3a 1700xxc4 2 3a 1800xxc5 3 3a 1800xxc6 4 3b 1810xxc2 1 3b 1800xxc7 2 3c 1700xxc3 1
以上是如何在 Microsoft Access 中模擬 ROW_NUMBER() 功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!