PostgreSQL (四) 索引

news/2024/7/9 22:52:33 标签: postgresql

1.优点

  • 创建唯一索引,保证数据的唯一性
  • 加快数据的查询速度
  • 建立索引可以加快表与表之间的连接
  • 为用来排序或者是分组的字段添加索引可以加快分组和排序顺序

2.原则

序号原则
1选择唯一性索引
2为经常需要排序、分组和联合操作的字段建立索引
3为常作为查询条件的字段建立索引
4限制索引的数目
5尽量使用数据量少的索引(如性别字段,一般只有"男"或"女",就没有必须要使用索引)
6尽量使用前缀来索引
7删除不再使用或者很少使用的索引
8最左前缀匹配原则,非常重要的原则
9=和in可以乱序
10尽量选择区分度高的列作为索引
11索引列不能参与计算,保持列“干净”
12尽量的扩展索引,不要新建索引

3.索引的分类

3.1.B-tree

适合按照顺序存储的数据,比如使用比较运算符的数据, 适合建立一个索引.
如:

  • <
  • <=
  • =
  • >=
  • BETWEEN
  • IN
  • IS NULL
  • IS NOT NULL

大部分的数据都可以使用该索引

3.2.Hash

用于处理比较简单的等于=符号的比较.

3.3.GiST

广义搜索树。GiST 索引允许构建通用的树结构。GiST 索引可用于索引几何数据类型和全文搜索。

3.4.GIN倒排索引

适合 array, hstore, json 和 range类型的数据, 多个值存储在单个列中时,GIN 索引最有用.

3.5.BRIN

9.5 版本新增的索引类型, 允许在非常大的表上使用索引, 常用于具有线性排序顺序的列,如日期列。

4.索引类型

4.1.单列索引

create index idx_table_name on table_name(name)

4.2.组合索引

create index idx_table_name on table_name(name,comment_info)

4.3.唯一索引

create unique index unique_idx on table_name(table_id)

5.索引的操作

5.1.重命名

alter index old_idx rename to new_idx

5.2.删除索引

drop index old_idx

http://www.niftyadmin.cn/n/229272.html

相关文章

Java经典笔试题—day01

Java经典笔试题—day01&#x1f50e;选择题&#x1f50e;编程题&#x1f95d;组队竞赛&#x1f95d;删除公共字符&#x1f50e;结尾&#x1f50e;选择题 (1) 在 Java 中&#xff0c;存放字符串常量的对象属于&#xff08; &#xff09;类对象。 A. Character B. String C. Str…

Linux三剑客——grep命令与正则表达式

Linux 三剑客 grep : 负责过滤&#xff0c;可以对文本、命令结果进行过滤 sed : 流编辑器&#xff0c;文本编辑工具 awk :Linux的文本报告生成器&#xff08;格式化文件&#xff09;&#xff0c;Linux上是gwak(GNU/AWK) &#x1f608; grep命令介绍 Global search REgular …

登录界面到个人中心

登录页面&#xff1a; 1. 使用路由渲染登录组件 在 /src/views 目录之下&#xff0c;创建 Login 文件夹&#xff0c;并在其下新建 Login.vue登录组件 在 /src/router/index.js 路由模块中&#xff0c;导入需要通过路由渲染的 login.vue 登录组件 在路由模块的 routes 数组中…

规模化敏捷框架:Spotify

Spotify 是全球最大、最受欢迎的流媒体音乐服务平台&#xff0c;预估用户总量已达2.86亿。Spotify 取得成功的一个关键因素就在于公司采用了一个独特方法: 围绕工作任务进行组织构建以提高团队敏捷性。Spotify 工程团队把提高团队敏捷性的经验记录了下来&#xff0c;并把经验分…

FISCO-BCOS链节点黑名单对共识的影响

目录一、前言二、测试过程三、PBFT一、前言 目的&#xff1a;在fisco-bcos&#xff08;v2.8.0&#xff09;环境下&#xff0c;测试黑名单对节点共识的影响。 部署搭建四节点的链&#xff0c;并部署console&#xff1a; https://fisco-bcos-documentation.readthedocs.io/zh_…

Kafka基本命令

常用命令 服务相关命令 ./bin/kafka-server.start.sh -daemon ./config/server.properties 指定对应的配置文件启动kafka&#xff0c;-daemon 参数会将任务转入后台运行&#xff0c;输出日志信息将写入日志文件 topic相关命令 bin/kafka-topics.sh --bootstrap-server hadoop…

wps宏编辑器API关于msgbox和inputbox的使用说明

WPS宏编辑器API参考关于函数列举了3个&#xff1a;DoEvents、InputBox和MsgBox&#xff0c;其中DoEvents有点不好理解&#xff0c;应该在什么场景下使用也缺乏官网指导说明&#xff0c;因此本文重点讲述InputBox和MsgBox的使用说明。 1、DoEvents 处理进程的消息队列中的消息…

高效的配置文件读取工具支持properties和yaml

JefConfig 前言 日常工作中不知道到大家有没有遇到以下几种情况&#xff1a; 1、在程序启动时需要加载配置文件&#xff0c;但是发现程序只能从固定位置读取配置文件。 2、程序在集成了spring框架后&#xff0c;想从配置文件中获取某个配置&#xff0c;但是发现当前程序并未交…