聚集索引非聚集索引

sql的索引有B+树和Hash结构两种,聚集索引非聚集索引都是采用B+树索引。

聚集索引

定义:数据行的物理顺序与该索引列值的逻辑顺序相同,一个表只能有一个聚集索引。即代表物理行位置的索引。

不创建索引,系统会自动创建隐含列作为表的聚集索引。

SQL Server默认主键就是聚集索引,也可以指定非聚集索引
创建完表后再指定聚集索引
create clustered index clustered_index on table_name(colum_name)

MySql主键就是聚集索引,直接设置主键就行了
alter table table_name add primary key(colum_name)

非聚集索引

定义:该索引中索引的逻辑顺序与磁盘上行的物理存储顺序不同,一个表中可以拥有多个非聚集索引。

非聚集索引也可以作为主键,视数据库。

你可能感兴趣的:(聚集索引非聚集索引)