当前位置:网站首页>查询优化(TTFB过长)left join索引未生效
查询优化(TTFB过长)left join索引未生效
2022-08-05 11:46:00 【夏至青柠】
今天发现页面初始化加载时间过长,(TTFB)等待状态竟然花费了近7s,要对此页面加载进行优化,减少加载时间

执行页面查询对应的sql;发现table f的type为ALL,以为未加索引;

找到该表查看,有索引;那么问题应该就是索引未生效;想了一下失效的种种原因竟然都不满足,有点纳闷;
最后发现JBS_PROJECT_PROFIT f ON f.PROJECT_ID = p.ROW_ID中的f.PROJECT_ID = p.ROW_ID字符集和排序规则不同;于是统一之后,sql执行时间未0.5s,页面立马加载好了。索引成功优点很明显,极大提高了查询效率。


总结一下:
页面查询加载慢,考虑该查询功能是否包含了冗余的处理;
查看对应的sql是否规范,是否添加了索引;
- 索引失效部分情况:
- 表的字符集不同
- 在where条件中进行运算
- like %%,且以通配符开头(‘%abc…’)mysql索引失效会变成全表扫描的操作
- 在索引列上做任何操作(计算、函数、(自动or手动)类型转换),会导致索引失效而转向全表扫描
- 组合索引不满足最左匹配原则
- 两列做比较
- is not null
- not in和not exists等等
小结
本文记载了自己在工作中遇到页面加载时间过长情况,通过代码及sql最后定位到原因索引失效,最终确认列的排序规则不同也会导致索引失效,有点意料之外,记录一下,在实践中会遇到各种奇怪的问题,静下心来,解决方式往往在不起眼的位置。
活动地址:CSDN21天学习挑战赛
边栏推荐
- 使用Netty编写通用redis客户端(可指定服务器地址与端口号连接任意redis)
- LeetCode brush questions (8)
- Go 语言快速入门指南: 基本类型
- Mysql8基础知识
- 澳洲站:电吹风AS/NZS 60335.2.23: 2017 安全标准测试
- PMP每日一练 | 考试不迷路-8.5(包含敏捷+多选)
- The importance of parameter naming, remember a JDBC parameter conflict
- 女人是这个世界上最美丽的生命
- 623. Add a row to a binary tree: Simple binary tree traversal problems
- 2022 极术通讯-基于安谋科技 “星辰” STAR-MC1的灵动MM32F2570开发板深度评测
猜你喜欢

【硬件架构的艺术】学习笔记(3)处理多个时钟

Exploration and practice of transaction link under multi-service mode

PMP每日一练 | 考试不迷路-8.5(包含敏捷+多选)

2022年6月互联网医疗领域月度观察
knife4j

JS 从零手写实现一个call、apply方法
The importance of parameter naming, remember a JDBC parameter conflict

365天挑战LeetCode1000题——Day 050 在二叉树中增加一行 二叉树

5G NR system messages

后缀自动机(SAM)——黑盒使用方案
随机推荐
训练集Loss收敛,但是测试集Loss震荡的厉害?
版本控制篇 | 龙智邀您共赴GOPS全球运维大会,探索大规模、敏捷、高质量、开放式的软件研发与运营之路
Version Control | Longzhi invites you to go to the GOPS Global Operation and Maintenance Conference to explore the road of large-scale, agile, high-quality and open software development and operation
JS 从零手写实现一个call、apply方法
Go编译原理系列9(函数内联)
2022年6月互联网医疗领域月度观察
【硬件架构的艺术】学习笔记(3)处理多个时钟
安全软件Avast与赛门铁克诺顿NortonLifeLock合并获英国批准
并非富人专属,一文让你对NFT改观
解决运行文件消失、C盘空间不断缩小而且找不到文件位置的问题
Discover the joy of C language
【HMS core】【FAQ】Health Kit、Ads kit、push Kit典型问题合集5
UDP communication
五大理由告诉你为什么开发人员选择代码质量静态分析工具Klocwork来实现软件安全
Official release 2022 Nanjing Zhibo Expo is scheduled to be held in Xinzhuang National Exhibition in October
Support Vector Machine SVM
Machine Learning - Ensemble Learning
解决 json.dump 报错:TypeError - Object of type xxx is not JSON serializable
我要抓狂了。。又回到了几天不能A一道题的时候
2022 CCF International AIOps Challenge Finals and AIOps Seminar Registration Open