select返回记录的顺序[3]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 youbo2004 的 blog

2.1全表扫描

如果select语句不能使用索引,则oracle按全表扫描方式读取数据块,对于返回的结果集,oraclerowid的大小顺序来返回记录。因此 select * from mytable select * from mytable order by rowid效果是一样的

       可以通过select rowid from table得到rowid伪列,数据类型为rowid类型。使用查询语句返回的是rowid的扩展格式(extended rowid)。扩展格式的rowid18个字符组成。这18个字符可以按照oooooo.fff.bbbbbb.sss的格式分为4组。分别代表数据对象编号(data object number,数据文件编号(datafile number),数据块编号(data block number,记录或记录片断的块内行号。

       必须说明的是,并不是后插入记录的rowid就越大,有可能后插入的记录rowid还要小。下面给出两个论点加以证明:

1.后插入的记录块内行号可能大,也可能小

本文关键:select返回记录的顺序
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top