当前位置: 代码迷 >> Oracle管理 >> 表中数据的排列顺序有关问题
  详细解决方案

表中数据的排列顺序有关问题

热度:38   发布时间:2016-04-24 04:43:32.0
表中数据的排列顺序问题
Oracle中表里边的数据默认是按照聚集索引的顺序排列的吗?假定表中有主键和聚集索引。
索引?数据顺序 索引,数据顺序

------解决方案--------------------
数据库select的默认排序
 
oracle对无order by的语句返回的结果不进行排序,oracle此时的处理方式是按照数据的物理存储顺序来读取数据。因为rowid是每行数据的地址,所以有时候看起来会像是使用rowid排序的。但这个顺序是可能被打乱的,在表的数据被删除后,rowid会被新插入的数据占用。所以一个无order by查询结果看起来也可能是个杂乱无章的。


要想有序,一定要加上 order by ,不要指望默认排序
------解决方案--------------------
除了索引表,Oracle存储数据不讲究先后顺序,基本按照插入顺序存储。聚族表则把相同聚族值的行存放在相同或相邻的数据块中。
  相关解决方案