美文网首页
Postgresql未使用索引问题

Postgresql未使用索引问题

作者: ifree321 | 来源:发表于2019-12-11 12:25 被阅读0次

使用EXPLAIN命令查看慢查询时发现,有个int列在查询时未命中索引, 如图:
name = 0


2019-10-07 at 1.47 PM.png

而如果查询改为 name = 1:


2019-10-07 at 1.46 PM.png

这是因为
该表中name为0的行数大于70%(或某个具体数值),索引查询会比seq scan顺序扫描要慢,PostgreSQL优化器选择使用顺序扫描的方式。
数据分布较小(比如 1.7%),则用 bitmap index scan。数据更少的时候,用的是 index scan。

参考: http://mysql.taobao.org/monthly/2018/11/06/

相关文章

  • Postgresql未使用索引问题

    使用EXPLAIN命令查看慢查询时发现,有个int列在查询时未命中索引, 如图:name = 0 而如果查询改为 ...

  • PostgreSQL中文全文索引

    搭建PostgreSQL中文全文索引环境,使用SCWS和zhaparser 1.安装postgreSQL 1.1....

  • 在 Elixir/Ecto 中使用 PostgreSQL JSO

    Elixir PostgreSQL index JSON 索引 Ecto PostgreSQL 提供了丰富的数据类...

  • PostgreSQL分页索引问题定位

    去年年中做了一个用户权益的控制功能,其中查询用户权益历史记录接口测试同学压测发现100(线程)*100(循环)的情...

  • PostgreSQL索引

    索引是对数据库中一列或几列的数据按照特定的数据结构进行排序保存的一种方式。使用索引可以加快数据库查询或排序时的速度...

  • 数据库篇

    2018.07.04 postgresql查询表的大小 数据库中单个表的大小(不包括索引) postgresql的...

  • Mysql使用强制索引

    问题 生成环境,同一条sql在不同的从库执行,产生的执行计划不同,一个使用了索引,一个未使用索引 原因分析 分析是...

  • PostGis空间索引

    索引的种类 PostgreSQL默认支持3种索引:B-Treeindexes, R-Treeindexes和 Gi...

  • PostgreSQL常用命令

    添加索引 https://devcenter.heroku.com/articles/postgresql-ind...

  • Django 随笔:illegal instruction 4

    问题来源 django 1.11 项目使用 postgresql 数据库,使用以下命令安装 psycopg2 : ...

网友评论

      本文标题:Postgresql未使用索引问题

      本文链接:https://www.haomeiwen.com/subject/yclmpctx.html