SQL 中每個群組的前N 行
在SQL 中,可以使用視窗函數來完成為每個群組選擇前N 行。視窗函數允許對一組行(稱為視窗)執行計算,這些行由指定的排序和分區定義。在本例中,我們希望為每個群組選擇前兩行,這可以透過以下步驟來實現:
以下是實現這些的範例查詢步驟:
SELECT * FROM ( SELECT *, RANK() OVER (PARTITION BY NAME ORDER BY SCORE DESC) AS row_rank FROM test ) AS ranked WHERE row_rank <= 2
此查詢將產生所需的輸出,如下所示:
NAME SCORE ----------------- willy 2 willy 3 zoe 5 zoe 6
以上是如何在SQL中選擇每個群組的前N行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!