见的索引类型:
-
B-tree 索引:这是最常用的索引类型,适用于大多数查询。B-tree索引可以高效地处理范围查询。
-
Hash 索引:适用于等值查询,但不支持范围查询。
-
GiST 索引:通用搜索树(GiST)索引可以用于多种数据类型,如空间数据和全文搜索。
-
Gin 索引:用于索引具有数组或全文搜索功能的列。
-
SP-GiST 索引:空间分区搜索树(SP-GiST)是一种可以用于更复杂数据类型的索引,如点和多边形。
-
BRIN 索引:块范围索引(BRIN)适用于大型表,特别是当数据已经按块排序时。
-
表达式索引:允许索引一个或多个列的表达式结果。
-
部分索引:只对表的一部分数据进行索引,通常是基于某个条件。
-
唯一索引:确保索引列的组合值是唯一的。
-
多列索引:可以同时对多个列进行索引,以优化涉及这些列的查询。
创建索引
单列索引
CREATE INDEX idx_idx_table_name_column1 ON table_name(column1 );
多列索引
CREATE INDEX idx_table_name_columns ON table_name (column1 , column2 );
唯一索引
CREATE UNIQUE INDEX idx_table_name_column1 ON table_name (column1 );
使用特定索引类型(例如 B-tree)
CREATE INDEX idx_table_name_column2 ON table_name USING btree (column2);
2. 查看索引
你可以使用以下查询来查看表上的索引:
\d table_name