ROWNUM的使用

mac2024-03-27  29

一个伪列看起来像是一个表中的列,但实际上并不保存在表中。你可以查询, 但是不能插入,修改和删除其中的值。一个伪列也类似于一个没有参数的函 数。但是在典型情况下,在结果集中可以为每一行返回相同的值,而伪列通 常为每一行返回不同的值。

ROWNUM 连接的行出现的先后顺序。查到的第一行rownum12 此类推.

如果ROWNUMOrder By子句同时出现相同的查询中,则行将被ORDER BY 句重新排序。结果的变化取决于访问数据的方式。

例如如果ORDER BY子句促使Oracle 使用索引来访问数据,Oracle 顺序将于不用索引不同。因此后面的语句返回的结果将于上一个查询不同

工资处

于第6到第10的员工信息

select * from (select rownum rn, from ( select * from scott. emp e order by sal desc) e)where rn 6 and 10

 

ROWNUM

符串拆分

a,BB,dd,aaa 拆分成四行 结果为:

a

BB

dd

aaa

select substr( ','|| 'a,BB,dd,aaa'|| ' , ' , instr(','||'a,BB,dd,aaa'||',', ',', 1, rownum) + 1, instr(','||'a,BB,dd,aaa'||',', ',', 1, rownum+1) - instr(','||'a,BB,dd,aaa'|| ',',',', 1, rownum) - 1 ) from dict where rownum <=length('a,BB,dd,aaa') - length (replace('a,BB,dd,aaa', ',')) +1 ;

 

ROWNUM

 

 

最新回复(0)