当前位置: 首页 > news >正文

PostgreSql 索引使用技巧

索引种类详情可参考《PostgreSql 索引》

一、适合创建索引的场景

  • 经常与其他表进行连接的表,在连接字段上应该建索引。
  • 经常出现在 WHERE 子句中的字段,特别是大表的字段,应该建索引。
  • 经常出现在 ORDER BY 子句中的字段,应该建索引。
  • 经常出现在 GROUP BY 子句中的字段,应该建索引。

二、不适合创建索引的场景

  • 特别小的表(数据小于1000行),不适合创建索引。
  • dml 操作频繁,查询操作很少的表,不适合创建索引。
  • 查询中很少使用的列,不适合创建索引。
  • 选择率太高的列(过滤后超过表总数据量30%),不适合创建索引。
  • 大的文本字段,不适合创建索引。
  • 存在复合索引时,不适合再创建单列索引(单列查询使用复合索引时,优先考虑最左原则)。

三、删除无用索引

查询数据库中未使用过的索引,确认业务确实用不上后可删除。

--查找未使用过的索引
select indexrelid::regclass as index_name,
relid::regclass as table_name
from pg_stat_user_indexes join pg_index
using(indexrelid)
where idx_scan = 0
and indisunique is false;--删除未使用过的索引
select 'drop index "'||indexrelid::regclass||'";' as dropsql
from pg_stat_user_indexes join pg_index
using(indexrelid)
where idx_scan = 0
and indisunique is false;
http://www.lryc.cn/news/267434.html

相关文章:

  • 【华为数据之道学习笔记】6-7打造业务自助分析的关键能力
  • K8S从harbor中拉取镜像的规则imagePullPolicy
  • LeetCode刷题--- 优美的排列
  • 关于edge浏览器以及插件推荐【亲测好用】
  • 关于“Python”的核心知识点整理大全43
  • Android Framework一些问题思考
  • 2024年安全员-C证证考试题库及安全员-C证试题解析
  • 推广主要指标及定义
  • 【Proteus仿真】【Arduino单片机】水质监测报警系统设计
  • 随机问卷调查数据的处理(uniapp)
  • 开源分布式搜索引擎ElasticSearch结合内网穿透远程连接
  • Leetcode2928. 给小朋友们分糖果 I
  • go-zero开发入门之网关往rpc服务传递数据2
  • Cron介绍,以及常见的cron表达式
  • 智能优化算法应用:基于协作搜索算法3D无线传感器网络(WSN)覆盖优化 - 附代码
  • 分布式训练通信NCCL之Ring-Allreduce详解
  • os_util 工具类和方法的实现
  • uview表单校验带星号
  • vue+element实现动态表格:根据后台返回的属性名和字段动态生成可变表格
  • 云渲染UE4像素流送搭建(winows、ubuntu单实例与多实例像素流送)
  • Unity VR Pico apk安装失败:INSTALL_FAILED_UPDATE_INCOMPATIBLE
  • Prompt 提示工程学习笔记
  • STM32实现三个小灯亮
  • 1861_什么是H桥
  • 【计算机四级(网络工程师)笔记】操作系统运行机制
  • Swagger快速入门
  • 数据结构之<堆>的介绍
  • 使用Ubuntu22+Minikube快速搭建K8S开发环境
  • 【中小型企业网络实战案例 二】配置网络互连互通
  • Azure Machine Learning - Azure OpenAI GPT 3.5 Turbo 微调教程