2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > mysql数据库sql优化子查询优化【MySQL】

mysql数据库sql优化子查询优化【MySQL】

时间:2019-02-08 06:58:22

相关推荐

mysql数据库sql优化子查询优化【MySQL】

数据库|mysql教程

数据库

数据库-mysql教程

1、什么是子查询、表关联查询:

子查询:是指在主sql语句中的select或where子句中使用select查询语句;select a.name,(select b.name from b where b.id=a.id) from a where a.name lik ‘a%’

表关联查询:指多个表联合查询;select a.name,b.name from a,b where a.id=b.id and a.name like ‘a%’;

虽然联合查询性能并不佳,但是和 MySQL 的子查询比起来还是有非常大的性能优势。MySQL 的子查询执行计划一直存在较大的问题,虽然这个问题已经存在多年,但是到目前已经发布的所有稳定版本中都普遍存在,一直没有太大改善。虽然官方也在很早就承认这一问题,并且承诺尽快解决,但是至少到目前为止我们还没有看到哪一个版本较好的解决了这一问题。

默认情况,子查询中使用全表扫描,所以总的I/O次数=主表数*子表数。当主表、子表中数据均查过1w时,使用子查询的整体性能就会立即下降,而且下降的会很厉害(测试发现大概需要10s多)

智慧物流 源码,ubuntu 国内源下载,tomcat用户名枚举,爬虫python go,郑州php培训机构名单,瓶子 seolzw

针对上面问题,解决方案:

1)对子表中的关联列建立索引、或建立外键关系:

如下有两张表a、b,使用子查询其执行计划如下

cms 管理系统源码下载,ubuntu 终端 的使用,爬虫电子报,php傻瓜,华蓥网页seolzw

a表结构:

大漠插件易语言源码,vscode和cmd,ubuntu 蓝灯,项目发布tomcat,sqlite导数据慢,微擎插件安装后白屏,前端开发的框架难吗,黑客爬虫什么意思,php.ini没有,抖音seo成都,网站源码上传安装包,精易语言 ie网页填表,androidapp模板lzw

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。