postgres 数据库的索引知识整理。
文章目录
前言
翻资料到处抄一抄,整理一下关于数据库的索引,这是因为在数据库查询的过程中总离不开与索引打交道。
主要还是抄官网http://www.postgres.cn/docs/12/indexes.html O(∩_∩)O
一、什么是索引
就是类比一本书籍里的目录。感兴趣的读者可以相对快地扫描索引并跳到合适的页而不需要阅读整本书来寻找感兴趣的材料。
在没有事前准备的情况下,系统不得不扫描整个test1表,一行一行地去找到所有匹配的项,这张很耗时间,但是如果系统被指示维护一个在id列上的索引,它就能使用一种更有效的方式来定位匹配行。
二、创建索引
2.1普通的索引创建方式
这种单索引的方式很常见也常用,
CREATE INDEX table_column_name_index ON tablename (column_name);
2.2组合索引
这种索引创建方式常用在多条件查询的i情况下,并且column_name1出现的频率比columname_2高,就将高频率的索引放到前面。
CREATE INDEX table_column_name_index ON tablename (column_name1,columname_2);
2.3唯一索引
索引也可以被用来强制列值的唯一性,或者是多个列组合值的唯一性。
CREATE unique INDEX table_column_name_index ON tablename (column_name1,columname_2);