Jag*_*gan 0 sql oracle oracle10g
如何使用"rownum"关键字从任何表中检索第三行(我使用的是oracle-10g)
Bob*_*ica 11
当查询生成行时,Oracle会按顺序将值分配给ROWNUM - 因此,获取的第一行获取ROWNUM = 1,获取的第二行获取ROWNUM = 2,获取的第三行获取ROWNUM = 3等.注意 - 对于行要分配ROWNUM = 3必须获取前两行.这就是您的查询不返回任何行的原因.您要求数据库提取第三行 - 但从未提取过第1行和第2行.
要演示,请尝试运行以下查询:
SELECT S.* FROM SALARY S; -- Should return all rows
SELECT ROWNUM, S.* FROM SALARY S; -- Should return all rows with ROWNUM prepended
SELECT ROWNUM, S.* FROM SALARY WHERE ROWNUM=3; -- Should return no rows
Run Code Online (Sandbox Code Playgroud)
要解决您的问题,请尝试以下操作:
SELECT ROW_NUMBER FROM
(SELECT ROWNUM AS ROW_NUMBER, S.* FROM SALARY S)
WHERE ROW_NUMBER = 3;
Run Code Online (Sandbox Code Playgroud)
分享和享受.
归档时间: |
|
查看次数: |
8896 次 |
最近记录: |