有没有办法从最终结果中排除row_number列?

时间:2013-12-09 20:19:51

标签: sql oracle

SELECT * FROM (
  SELECT ROW_NUMBER() OVER (ORDER BY ProductID) AS rn, p.*
  FROM(
    SELECT * FROM products
  ) p) p2
WHERE rn BETWEEN 0 AND 10
ORDER BY rn

我不希望上面的查询返回rn列。

1 个答案:

答案 0 :(得分:-1)

从您的示例查询开始,您将选择按ProductID排序的前10条记录。如果确实如此,则可以通过以下方式获得相同的结果:

select * from
(select * from products order by ProductID)
where rownum <= 10

如果不是您期望的结果,请更正您的查询(可能添加“PARTITION BY”)。