0
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
我不希望上述查询返回列列。有没有办法从最终结果中排除row_number列?
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
我不希望上述查询返回列列。有没有办法从最终结果中排除row_number列?
从您的示例查询中,您可以选择ProductID排序的前10条记录。如果为真,那么同样的结果可以通过以下方式实现:
select * from
(select * from products order by ProductID)
where rownum <= 10
如果不是你期望那么请更正您查询的结果(也许添加“PARTITION BY”)。
这不会产生与OP的查询相同的结果 – nachonachoman
当然。将SELECT * FROM替换为实际的列 –
不知道它们。 –
你不能在你的数据库中查找'产品'表的列吗? '选择*从产品'返回。 –