mysql关联语句优化_MySql语句关联优化问题,为什么加了限制条件反而更慢?
Sql语句如下
select u.name,
u.user_id,
u.phone,
a.title,
a.address,
r.device_id,
r.type,
b.money,
b.pay_type,
r.create_time,
r.reward_money
from(
select device_id, out_trade_no, reward_money, type, c_address_id, create_time
from charge_reward_bill
where type=3 and user_id='100034' and create_time>='2018-02-13' and create_time
inner join charge_bill b on b.out_trade_no= r.out_trade_no and b.pay_time='2018-02-13' #如果把pay_time的限制条件加上反而更慢了
inner join device_address_change a on a.id= r.c_address_id
left join user_app_info u on u.user_id= a.user_id
order by r.create_time desc
limit 10000,10
charge_reward_bill数据量700W左右,charge_bill数据量200W左右,均已分库分表,device_address_change 和user_app_info 是2张小表。
目前来说,查询速度比较慢,第一个表不用子查询也会更慢
问题:charge_bill 这个表关联为什么加上时间的限制条件反而会更慢呢? pay_time上没有索引,字段类型为datetime
,求大佬们说说,或者给点优化思路
mysql关联语句优化_MySql语句关联优化问题,为什么加了限制条件反而更慢?相关推荐
- mysql key value 排序_MySQL利用索引优化ORDER BY排序语句的方法
创建表&创建索引 create table tbl1 ( id int unique, sname varchar(50), index tbl1_index_sname(sname desc ...
- mysql or优化_MySQL 语句优化
官方文档放这里,有什么代码先到官方文档查询: MySQL 8.0 Reference Manual :: 8 Optimizationdev.mysql.com 优化涉及多个级别的配置,调整和测量性 ...
- mysql函数做条件_MySQL语句优化(三):避免条件字段做函数操作
今天跟各位分享一个生产环境慢查询的例子,是一个比较典型的"条件字段使用了函数导致无法走索引"的例子. 一.定位慢查询 首先发现慢查询告警,通过运维平台看到慢查询主要是下面这条:SE ...
- MySQL的主动优化和被动优化_MySQL“被动”性能优化汇总!
年少不知优化苦,遇坑方知优化难. --村口王大爷 本文内容导图如下: 我之前有很多文章都在讲性能优化的问题,比如下面这些: 当然,本篇也是关于性能优化的,那性能优化就应该一把梭子吗?还是要符合一些规范 ...
- mysql语句解析_mysql 语句的查询过程解析
select * from tb where ID = 1 下面解析的查询过程都是基于上面的简单查询,该系列的所有素材都来自于丁奇的mysql的45讲 1.建立连接 a.客户端发出请求,请求首先到达连 ...
- MySQL的主动优化和被动优化_MySQL“被动”性能优化汇总
本文内容导图如下: 我之前有很多文章都在讲性能优化的问题,比如下面这些: 当然,本篇也是关于性能优化的,那性能优化就应该一把梭子吗?还是要符合一些规范和原则呢? 所以,在开始之前(MySQL 优化), ...
- mysql sql优化_Mysql的SQL优化指北
要知道怎么优化首先要知道一条SQL是怎么被执行的 首先我们会连接到这个数据库上,这时候接待你的就是连接器.连接器负责跟客户端建立连接.获取权限.维持和管理连接. MySQL拿到一个查询请求后,会先到查 ...
- mysql数据库前端缓存_MySQL数据库性能优化--缓存参数优化
在平时被问及最多的问题就是关于 MySQL 数据库性能优化方面的问题,所以最近打算写一个MySQL数据库性能优化方面的系列文章,希望对初中级 MySQL DBA 以及其他对 MySQL 性能优化感兴趣 ...
- mysql 架构优化_Mysql 架构及优化之-查询性能优化
①②③④⑤⑥⑦⑧⑨ 查询执行基础知识 mysql执行查询过程 ① 客户端将查询发送到服务器 ② 服务器检查查询缓存 如果找到了就从缓存返回结果 否则进行下一步 ③ 服务器解析,预处理和优化查询,生成执 ...
最新文章
- spring-java.lang.stackOverFlowError
- 五分钟示范“教会”演员说外语,还可无缝切换语种,这家AI配音公司刚获2000万美元A轮融资...
- python如何修改excel数据库_python修改excel数据库
- HTML与CSS基础之伪类选择器(三)
- vml的简易画板_2
- 【学习笔记】第一章——操作系统的系统调用(陷入指令、库函数、作用流程)
- Community Server专题八:MemberRole之Membership深入篇 [转]
- C语言_顺序结构的程序设计
- android模拟点击webview,的Android的WebView点击模拟
- Layui 中引入Echarts模块
- 支持java浏览器_如何为浏览器安装支持JAVA的插件
- 基于matlab的图像拼接论文,基于MATLAB的图像拼接算法实现研究
- 关于C#GB2312编码问题
- Google Chrome 启动 0x0000005 崩溃问题的解决方法
- Filtered off site request to
- ACM Plan UVa - 11902 Dominator(图的遍历,深度优先)
- YOLOV2 YOLO9000
- 口算助手--家长好帮手
- (六) 数据结构 - 快速排序
- BFU C.yi的书包 01背包【水题】
热门文章
- 关于SQL的基础语法(一)
- 剖析 Apache 顶级项目 SkyWalking 的源码 ,看看它有什么好?
- keyevent 封装_adb shell input keyevent 控制按键输入的数值(收藏版)
- hdu-1088 Write a simple HTML Browser
- Runtime 在IOS中的详细使用
- [转]Linux下显示硬件信息--lshw
- JS - this,call,apply
- SpringBoot教程
- 泰安机器人比赛_泰安学子在省青少年机器人竞赛上揽8个一等奖
- angular4点击事件监听_angular 事件广播和事件监听