记一次inner join sql优化
由于线上出现慢sql的警告,于是进行优化
每一个inner join on 后面的条件都建有索引
原句:
select p.eval_id
FROM
p_evaluation p
INNER JOIN crm_consumer_company ccc ON
ccc.company_id = p.company_id
INNER JOIN crm_dept cd ON
cd.related_company_id = ccc.server_company_id
INNER JOIN biaoju_caishui.zhubajie_caishui_crm.crm_staff cs ON
cs.company_id = cd.company_id
AND cs.staff_id = 9169
WHERE
1 = 1
AND p.data_type = 'EVAL'
AND p.staff_type = 'ACCT'
这个inner join 没有走索引。原因具体的我也不知道
后面就直接想到拆分
优化后:
SELECT
count(p.eval_id)
FROM
biaoju_caishui.zhubajie_caishui_crm.p_evaluation p
RIGHT join (
SELECT
company_id
FROM
biaoju_caishui.zhubajie_caishui_crm.crm_consumer_company a
RIGHT join (
SELECT
DISTINCT related_company_id
FROM
biaoju_caishui.zhubajie_caishui_crm.crm_dept
where
company_id = (SELECT company_id from biaoju_caishui.zhubajie_caishui_crm.crm_staff where staff_id=9169) ) bb on
bb.related_company_id = a.server_company_id
where
bb.related_company_id is not null) cc on
cc.company_id = p.company_id
where
p.data_type = 'EVAL'
AND p.staff_type = 'ACCT'
把每一个inner join 拆出来 然后用右连接来进行数据的查询,这样每个索引都没用到了。速度直接快了很多
记一次inner join sql优化相关推荐
- 冻结时间倒数前一小时,记一次步步惊心的SQL优化
作者介绍 黄浩:从业十年,始终专注于SQL.十年一剑,十年磨砺.3年通信行业,写就近3万条SQL:5年制造行业,遨游在ETL的浪潮:2年性能优化,厚积薄发自成一家. 9月版本是一个大版本,上上下下都在 ...
- sql查询时间大于某一时间_查询时间从24分钟到2秒钟:记一次神奇的SQL优化
作者 | VWO译者 | 无明编辑 | VincentAI 前线导读:去年十二月份,VWO 平台支持团队发布了一份缺陷报告.这份报告很有意思,其中有一个来自某家企业用户的分析查询,它的运行速度非常 ...
- arcgis select by attributes一次选多个_优化体系--记一次生产数据库sql优化过程--组合索引...
概述 最近比较有空,所以看了一些问题sql,顺便优化一下,做个简单记录. 问题sql SQL(c212jfrj1m0fg) 在采样期平均单次执行逻辑读为 106205.83, 其最新执行计划涉及 2 ...
- 记一次简单的sql优化
select round(sum(qj0109)/10000,1) from qylist where sfmsqx='y' and lybmhy!='': 进行优化 select round(sum ...
- SQL优化--inner、left join替换in、not in、except
SQL优化--inner.left join替换in.not in.except 新系统上线,用户基数16万,各种查询timeout.打开砂锅问到底,直接看sql语句吧,都是泪呀,一大堆innot i ...
- 19_clickhouse,数据查询与写入优化,分布式子查询优化,外部聚合/排序优化,基于JOIN引擎的优化,SQL优化案例,物化视图提速,查询优化常用经验法则,选择和主键不一样的排序键,数据入库优化
25.数据查询与写入优化 25.1.分布式子查询优化 25.1.1.分布式表的IN查询示例1(普通IN子查询.IN子查询为本地表) 25.1.2.分布式表的IN查询示例2(普通IN子查询.IN子查询为 ...
- inner join 和 exists 效率_19 个让 MySQL 效率提高 3 倍的 SQL 优化技巧
在介绍具体的 SQL 调优的方法前,我们先来简单了解下 MySQL 调优金字塔理论. 如上图所示,数据库优化维度有四个:硬件.系统配置.数据库表结构.SQL 及索引. 优化成本: 硬件>系统配置 ...
- SQL优化器原理 - Auto Hash Join
这是MaxCompute有关SQL优化器原理的系列文章之一.我们会陆续推出SQL优化器有关优化规则和框架的其他文章.添加钉钉群"关系代数优化技术"(群号11719083)可以获取最 ...
- 从零开始java数据库SQL优化(二):多个LEFT JOIN的SQL优化
一:场景 我代码里需要在用户登录时将所有用户相关的用户,角色,部门,岗位,权限(其中权限放在菜单中,每2张表有一张关联表),不多说直接上SQL SELECT a.fk_user_id AS " ...
最新文章
- 给char*一个名份
- 【风险管理】策略开发流程
- NYOJ 118 修路方案(次小生成树)
- 容联CTO许志强:AI、5G让通讯更智能、更高效
- 使用mount挂载一个windows的共享
- neon浮点运算_Linux下VFP NEON浮点编译
- pythoncad二次开发视频_AutoCAD ObjectARX 二次开发(2020版)--4,使用ARX向导创建CAD二次开发项目(编程框架)--...
- Emlog博客MetBlogm主题-博客开源主题源码
- windows Server 2003使用ip安全策略禁止某ip访问服务器的方法
- 命令行插入时显示不存在_成年人的世界里,不存在“容易”两个字没人心疼时自己要学会坚强...
- Android 保持屏幕常亮
- Mysql查询字段去除指定列重复数据
- redis报错: redis.exceptions.ResponseError: value is not an integer or out of range
- Kubernetes环境下如何运行Coherence缓存集群
- NetWare 客户服务禁用了欢迎屏幕和快速切换恢复方法
- 系统测试总结报告模板
- Linux内核 失速(STALL) 警告说明文档翻译
- 复制网站zencart模板的方法
- You must restart adb and Eclipse处理方法(sjk_daemon.exe占用5037端口)
- Kafka消费者订阅方式
热门文章
- 您的孩子左右脑发展平衡吗
- 始人蒋涛解读鸿蒙:对开发者究竟意味着什么?
- 融雪径流(一)MODIS数据集下载(MOD10A2、MOD11A2)
- 头条号如何提升互动度
- 【C/C++: 字符数组的赋值】
- 前端上传图片回显并用base64编码,后端做解码储存,存储图片路径在.properties文件中配置(以上传身份证照片为例)
- C# winfrom美化提示框,顶部弹出提示框
- Go利用windres.exe和.rc文件在Windows下生成的程序带有版本、版权、产品名称、图标等属性信息
- vector预留空间
- javaScript 数组对象取出某一列