2

ID と URL の 2 つの列を持つテーブルがあり、ID ごとに複数の URL があります。ID ごとに最大 5 つの URL のみを抽出したい。Oracle SQLでこれを行うにはどうすればよいですか?

4

1 に答える 1

7

これを試して、

SELECT ID, URL
FROM
    (
        SELECT ID, URL,
               ROW_NUMBER() OVER (PARTITION BY ID ORDER BY URL DESC) RN
        FROM   tableName
    ) a
WHERE RN <= 5

SQLFiddle デモ

于 2012-09-28T05:30:43.007 に答える