2

我有一个包含 2 列 ID 和 URLS 的表,每个 ID 都有几个 URLS。我只想为每个 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 回答