工作中遇到个情况

sql如下:

SELECT org.id orgid,org."path"
FROM (
SELECT * FROM A
INNER JOIN t_org org ON ...
INNER JOIN C org ON ...
INNER JOIN D b ON ...
INNER JOIN E bsns ON ...
LEFT JOIN F logopttp ON ...
LEFT JOIN G sysopttp ON ...
WHERE =
-- AND org.PATH ~ '(/177412/)';-- 加上这一行,时间12s,去掉之后0.3s,怀疑是因为模糊查询导致了全表扫描

解决方式:1.给需要查询快的字段加上gin索引

2. 用position函数,替代模糊查询

SELECT org.id orgid,org."path"
FROM (
SELECT * FROM A
INNER JOIN t_org org ON ...
INNER JOIN C org ON ...
INNER JOIN D b ON ...
INNER JOIN E bsns ON ...
LEFT JOIN F logopttp ON ...
LEFT JOIN G sysopttp ON ...
WHERE =
AND position('/177412/' in org.path)>0;-- 这样的写法不导致全表扫描

postgre ~模糊查询慢解决方式的更多相关文章

  1. input动态模糊查询的实现方式

    最近在用jQuery实现动态模糊查询的时候,找了挺久都没有找到像Vue.js的watch属性这么好用的动态模糊查询方法.就分享一下目前遇到的坑和可以实现动态查询的几种方式. 1.jQuery的chan ...

  2. GridLookUpEdit多列模糊查询最简单方式 z

    GridLookUpEdit的知识库是RepositoryItemGridLookUpEdit,切确的说GridLookUpEdit只是RepositoryItemGridLookUpEdit的一个壳 ...

  3. 关于 jquery select2 多个关键字 模糊查询的解决方法

    select2 只针对 元素的text()进行匹配,实际开发过程中可能会存在通过id 或者特殊编码进行 多关键字匹配. 改动了下源码:红色为改动部分. process=function(element ...

  4. 九、mybatis模糊查询2种方式

    1. 2. 3.

  5. Mybatis中的like模糊查询四种方式

    1.  参数中直接加入%% param.setUsername("%CD%"); param.setPassword("%11%"); <select i ...

  6. MyBatis 模糊查询的 4 种实现方式

    引言 MyBatis 有 4 种方式可以实现模糊查询. 员工信息表 ( tb_employee ) 如下: id name sex email birthday address 001 张一凡 男 z ...

  7. Trie树-提高海量数据的模糊查询性能

    今天这篇文章源于上周在工作中解决的一个实际问题,它是个比较普遍的问题,无论做什么开发,估计都有遇到过.具体是这样的,我们有一份高校的名单(2657个),需要从海量的文章标题中找到包含这些高校的标题,其 ...

  8. mybaits模糊查询使用<bind>标签

    <select id="selectBlogsLike" resultType="Blog"> <bind name="patter ...

  9. Mysql 之实现多字段模糊查询

    在一个table中有省,市,县,期,栋,单元,室几个字段,然后用户输入一个地址从表中的字段拼接起来进行模糊查询. 解决办法: <MySQL权威指南>中CONCAT的使用方法,在书中的对CO ...

随机推荐

  1. centos7安装redis 并配置在后台启动

    官网  https://redis.io/download 先进入 目录 /usr/local 1 下载文件包 $ wget http://download.redis.io/releases/red ...

  2. LeetCode - 61、旋转链表

    给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4-& ...

  3. formset的简单使用

    1.modelform class StudentStudyRecordModelForm(forms.ModelForm): class Meta: model = StudentStudyReco ...

  4. LG4351 [CERC2015]Frightful Formula

    Frightful Formula 给你一个\(n\times n\)矩阵的第一行和第一列,其余的数通过如下公式推出: \[f_{i,j}=a\cdot f_{i,j-1}+b\cdot f_{i-1 ...

  5. SVM: 实际中使用SVM的一些问题

    使用SVM包来求θ,选择C与核函数 我们使用已经编写好的软件包(这些软件包效率高,用得多,是经无数人证明已经很好的可以使用的软件包)来求θ,而不是自己去编写软件来求它们(就像我们现在很少编写软件来求x ...

  6. SVM: 直观上理解大间距分类器

    在SVM中,增加安全的间距因子 那么增加了这个间距因子后,会出现什么样的结果呢,我们将C设置为很大(C=100000) SVM决策边界 当我们将C设置得很大进,要想SVM的cost function最 ...

  7. quiver()函数

    1.quiver函数 一般用于绘制二维矢量场图,函数调用方法如下: 1 quiver(x,y,u,v) 该函数展示了点(x,y)对应的的矢量(u,v).其中,x的长度要求等于u.v的列数,y的长度要求 ...

  8. 织梦cms 后台查看会员性别为空

    织梦cms会员注册选择性别为保密时,在后台会员中心查看性别为空的修改方法 第一步:找到dede/templets/member_view.htm,在引号中添加保密就ok 再次修改后的结果

  9. LightOJ - 1245 - Harmonic Number (II)(数学)

    链接: https://vjudge.net/problem/LightOJ-1245 题意: I was trying to solve problem '1234 - Harmonic Numbe ...

  10. CF gym 100962D Deep Purple [后缀树,树链剖分,线段树]

    Codeforces 思路 感觉这个离线的思路好神仙啊qwq 对于每个询问\([l,r]\)其实就是要求\(p_{max}\),使得\(lcs(s[1,p],s[1,r])>p-l\),也就是\ ...