索引组织表:
查询语句如果是普通表,需要先从索引中获取rowid,然后定位到表中,获取id以外的其他列动作,
这就是回表。如果查询列有索引回表就可以避免了。
其中索引组织表可以避免回表。其中的organization index(创建表的后面加) 关键字就是索引组织表的语法,索引组织表必须
有主键。
索引组织表最大的特点就是,表就是索引,索引就是表。不过这种设计的表更新要比普通表的开销大。因为表要和索引一样有序
的排列,更新负担将会严重。所以这种设计一般很少用在更新,频繁读的应用场合,比如地区配置表,这种数据一般很少变动,
却大量读取。
簇表:
普通表的缺陷是,order by语句的排序不可避免。而有序的簇表可以避免排序
create cluster shc
(
cust_id number,
order_dt timestamp sort
)
hashkeys 10000
hash is cust_id
size 8192
/
create teable cust_orders
(
cust_id number,
order_dt timestamp sort,
order_number number,
...
)
cluster shc(cust_id,order_dt)
/
簇表的特点和组织表一样