Oracle(21)什么是聚集索引和非聚集索引?
在Oracle数据库中,聚集索引和非聚集索引是两种常见的索引类型。
聚集索引(Clustered Index): 聚集索引是按照数据的物理存储顺序排序的索引,表中的数据行按照索引的排序顺序存储。一个表只能有一个聚集索引,因为它决定了表中数据行的物理存储顺序。
非聚集索引(Non-Clustered Index): 非聚集索引不改变表中数据行的物理存储顺序。它是一个单独的,表的数据行的地址指针。每个表可以有多个非聚集索引。
简单来说,聚集索引根据索引顺序存储表中的数据,而非聚集索引则不改变数据存储的物理顺序,它包含指向表中数据行的指针。
以下是创建聚集索引和非聚集索引的示例SQL代码:
-- 创建聚集索引
CREATE CLUSTER INDEX idx_cluster_employee ON employees(employee_id);
-- 创建非聚集索引
CREATE INDEX idx_noncluster_employee_name ON employees(last_name);
在这个例子中,employees
是一个表,employee_id
是要建立聚集索引的列,而 last_name
是要建立非聚集索引的列。
评论已关闭