文章目录

  • 一、明确主题
  • 二、目标
  • 三、如何进行SQL优化?
    • 3.1 pg_stat_activity系统内置活动视图
      • 视图主要字段
        • wait_event_type
        • state
    • 3.2 pg_stat_statement SQL执行统计视图
      • 3.2.1 pg_stat_statements 视图详细说明
        • 中文版(简版)
      • 3.2.2 常见案例 Top SQL
    • 3.3 大表的索引使用情况
      • 3.3.1 pg_stat_user_tables视图
      • 3.3.2 pg_stat_user_indexes视图
  • 四、如何分析慢查询?查看执行计划!
    • 4.1 EXPLAIN 介绍
    • 4.2 EXPLAIN 内容说明
      • 4.2- EXPLAIN可视化
    • 4.3 EXPLAIN一些常见运算操作
    • 4.4 查询规划器的依据--统计数据
      • 4.4.1 统计数据
      • 4.4.2 pg_stats 视图
    • 4.5 用好工具
  • 五、如何使用索引?
    • 5.0 必看!!!重要!!!**:boom:**:boom::boom:
    • 5.1 快问快答
    • 5.2 探索:如何创建索引?
      • 5.2.1 索引的名字
      • 5.2.2 索引的字段
      • 5.2.3 索引的方法(类型)
      • 5.2.4 索引的运算符类别
      • 5.2.5 索引的排序顺序
    • 5.3 探索:什么时候走索引?
    • 5.4 全都是套路!:rocket::bulb:
      • 5.4.1 重点关注大表
      • 5.4.2 分析大表
      • 5.4.3 日常重建索引**:recycle:**

一、明确主题

引语

  • 如何使用索引?(what 什么是索引?why 为什么需要索引?how 如何创建索引?when 什么时候走索引?)

二、目标

原因:大部分SQL问题都能通过加索引来解决,我希望这个套路能够成为大家后续在进行SQL优化中思考的一个方向。

养成一种自信:索引能够解决的问题,就不是问题。

三、如何进行SQL优化?

上面有提到,虽然DDL,DML,DQL,DCL我们都需要了解,但是select仍然是主旋律

那么问题来了:如何写出高性能的SQL?还有,我怎么知道我写的SQL是不是高效的?

最简单的一个标准:在达到业务目的的情况下,select语句用时最少,那么就是最高效的。

如何发现问题?

  1. PostgreSQL之如何进行SQL优化?相关推荐

    1. PostgreSQL 一复合查询SQL优化例子 - (多个exists , 范围检索 , IN检索 , 模糊检索 组合)...

      标签 PostgreSQL , 多个exists , 范围检索 , IN检索 , 模糊检索 , 组合 , gin , recheck , filter , subplan 背景 当一个SQL包含复杂的 ...

    2. postgresql两个列模糊比较_数据分析之SQL优化系列(二)---PostgreSQL 的索引

      参考<PostgreSQL11.2-中文手册> 下面这个链接,讲的通俗易懂,可以看看. 数据分析师不得不知道的SQL优化 - 鑫获 - 博客园​www.cnblogs.com 索引是提高数 ...

    3. postgresql SQL 优化 -- 理论与原理

      这里写的是一个系列,关于POSTGRESQL SQL 优化的问题,这篇是这个系列的第二篇,第一篇可以在文字的末尾的连接中找到,之前有同学提出,希望有一个历史文字的连接. 这期就进入正题,一个SQL 语 ...

    4. PostgreSQL 如何查找TOP SQL (例如IO消耗最高的SQL) (包含SQL优化内容)

      目录 背景 一.安装pg_stat_statements 二.加载pg_stat_statements模块 三.配置pg_stat_statements采样参数 四.创建pg_stat_stateme ...

    5. PostgreSQL常用SQL优化技巧

      PostgreSQL的SQL优化技巧其实和大多数使用CBO优化器的数据库类似,因此一些常用的SQL优化改写技巧在PostgreSQL也是能够使用的.当然也会有一些不同的地方,今天我们来看看一些在Pos ...

    6. 这次被问懵了!搞定了这些SQL优化技巧,下次横着走

      SQL 优化已经成为衡量程序猿优秀与否的硬性指标,甚至在各大厂招聘岗位职能上都有明码标注,如果是你,在这个问题上能吊打面试官还是会被吊打呢? 有朋友疑问到,SQL 优化真的有这么重要么?如下图所示,S ...

    7. 搞懂这些SQL优化技巧,面试横着走

      点击上方"朱小厮的博客",选择"设为星标" 后台回复"书",获取 来源:sohu.gg/FGG98 SQL 优化已经成为衡量程序猿优秀与否的 ...

    8. SQL优化:紧急情况下提高SQL性能竟是这样实现的!(文中有惊喜)

      关注我们获得更多精彩 作者 | 黄堋 ,多年一线 Oracle DBA 经验,长期服务电信.电网.医院.政府等行业客户.擅长数据库优化.数据库迁移升级.数据库故障处理. 在某运营商的优化经历中曾经遇到 ...

    9. 实战演练:通过伪列、虚拟列实现SQL优化

      关注"数据和云",精彩不容错过 本文是技术同仁 蔡亮 在日常工作中通过试验,总结出的一些技巧方案,供大家参考学习.在此,感谢蔡亮的供稿分享,希望大家也可以后续将学习工作中遇到的问题 ...

    最新文章

    1. CDOJ_327 BerOS file system
    2. C# winform combobox 在绑定数据之后插入一项选择项
    3. Java DelayQueue延迟队列的使用和源码分析
    4. v-on 事件监听器
    5. 【费用流】摘取作物(jozj 3447)
    6. 苹果机的时间格式转换为时间搓
    7. html span标签 不换行(有时span带中文时候是可以自动换行的)
    8. O036、Snapshot Instance 操作详解
    9. OC 与 C++ 混编导致 ’string‘ not found
    10. 实现可拖拽,拉伸,吸附功能的甘特图(时间/任务表)
    11. bzoj 4975: 区间翻转(博弈)
    12. JS 对象(Object)和字符串(String)互转方法
    13. 主题样式之花里胡哨之鼠标点击效果
    14. 计算机语言运行速度排名,2019年的编程语言排行榜你知道吗
    15. 【自动驾驶】二自由度车辆动力学模型
    16. WPF随笔(七)--分页控件
    17. leetcode No5. Longest Palindromic Substring
    18. 【图像去模糊】SDWNet: A Straight Dilated Network with Wavelet Transformation for image Deblurring
    19. [游泳] 游泳学习课程
    20. 2017网易雷火实习生招聘编程题

    热门文章

    1. 用Python爬取豆瓣首页所有电影名称、每部电影影评及生成词云
    2. NLP自然语言处理-英文文本电影影评分类2-pytorch版本
    3. 3D Human Pose Estimation with Spatial and Temporal Transformers论文笔记
    4. 程序员为什么要时刻保持危机感?
    5. 08.音频系统:第003课_Linux音频驱动程序:第002节_ASoC音频驱动框架
    6. xampp mysql ssl_xampp搭建https服务器
    7. Python采集12星座信息,分析出12星座的各个特点
    8. bzoj 4399 魔法少女LJJ
    9. 广东计算机非全日制 学校2020,2020年广东省非全日制研究生学校及专业有那些?...
    10. C#调用usb摄像头的实现方法