sql:SQL优化知识点记录(五)

这篇具有很好参考价值的文章主要介绍了sql:SQL优化知识点记录(五)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

(1)explain之例子

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

 (2)索引单表优化案例

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 文章来源地址https://www.toymoban.com/news/detail-689122.html

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

上面的功能已经实现,但是分析功能, 使用explain分析这条sql:

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

发现type为All Extra:有Using filesort (文件内排序) 这两个是影响性能的

 

 查看下这张表:只有一个主键索引

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 为这几个字段建立一个符合索引:

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

建立完索引后,在使用explain进行分析一下:type变成了range,但是Extra还是留着Using filesort

因为comments>1,是一个范围,范围之后会导致索引失效,有范围导致后面的索引用不上

还需要优化

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 删除上面建立的索引:drop

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

重新建立索引:跳过comments字段

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

 查看索引sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 

 此时再使用explain查看:

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

(3)索引两表案例优化案例

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

 

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

 

 

分析一下sql:type为all    rows为20+20sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

 有连个表:先给一张表book表建立索引

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

此时在分析sql:下面book的type变为ref 性能得到了增强

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

 把索引加到class表:删除索引

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

加索引: 

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

在次分析sql:class的type为index    效果ref>index  没有ref好,可以看出左连接给右表建立索引性能高

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 

左连接,给右表建立索引。右连接,给左表建立索引

(3)索引三表优化案例

新建一个表 

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

删除前面的建立索引:sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 三表查询:

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 分析一下sql:type全是all,需要建立索引优化

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库 

 跟据左右连接,分别建立索引(左建右,右建左)sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 建立后分析一下sql:两分type变为all

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 

sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 sql:SQL优化知识点记录(五),数据库知识点总结,sql,数据库

 

到了这里,关于sql:SQL优化知识点记录(五)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • sql:SQL优化知识点记录(十二)

    sql:SQL优化知识点记录(十二)

       加读锁和写锁 查看是否上锁:In_use:变成了1    读写锁对我们数据产生哪些影响: 读锁:是共享锁,其他线程可以查看: 加了读锁:session1不能修改自己,也不可以读其他表 但是session2窗口可以读其他表  session2:此时对加锁的表进行更改操作,它会进入阻塞状态   

    2024年02月09日
    浏览(8)
  • sql:SQL优化知识点记录(三)

    sql:SQL优化知识点记录(三)

    简单的查询类型是:simple   外层 primary,括号里subquery  用到了临时表:derived   trpe反映的结果与我们sql是否优化过,是否是最佳状态息息相关 最简单的查询啥都没有改type就是all:表明的的检索是全表扫描   const:通过id查询,有索引查询很快  t1查询完之后作为一张临时表

    2024年02月10日
    浏览(8)
  • sql:SQL优化知识点记录(八)

    sql:SQL优化知识点记录(八)

    所谓索引:就是排好序的快速查找数据结构,排序家查找是索引的两个用途 select * 在where使用到了索引,当select *  有模糊查询%在左边索引会失效  当select * where后面索引的顺序发生变化,也会用到索引4个  我们where后面倒着排序,也会使用到索引4个 上面,因为有MySql查询优

    2024年02月10日
    浏览(10)
  • sql:SQL优化知识点记录(十五)

    sql:SQL优化知识点记录(十五)

      我们这里配置一Windows上的MySql做主机,Linux上的MySql做从机,搭建一主一从 测试以下是否能够拼通:从Linux上:167,连接Windows的165 从Windows的165 连接Linux上:167,看是否拼通   修改配置文件:首先Windows:my.ni 主机配置文件修改: 从机配置文件修改:   注释掉server-id ,打开

    2024年02月09日
    浏览(9)
  • sql:SQL优化知识点记录(九)

    sql:SQL优化知识点记录(九)

    对sql调优的分析: 排序优化:  数据库的连接方式,里面的数据尽量这样连接,尽量选择第一个方式,因为两个表的连接一共建立5次连接,第二个建立1000次连接,从小表驱动大表方式来说选择第一种 B相当于部门, A是员工,通过部门id在部门表里面,部门是少量的,员工是

    2024年02月10日
    浏览(11)
  • SQl Server 2008 知识点概括【数据库】

    什么是数据库? 数据库是采用计算机技术统一管理的相关数据的集合,数据库能为各种用户共享,具有冗余度最小、数据之间联系密切、有较高数据独立性等特点。 Microsoft SQL Server 系统的体系结构 Microsoft SQL Server 2008系统由4个主要部分组成,这4个部分被称为4个服务,这些服

    2024年02月05日
    浏览(40)
  • ORACLE数据库 —— PL/SQL知识点2

    ORACLE数据库  PL/SQL语句基础知识点  适合有SQL基础的人群。  禁止转载! 内置函数 字符串函数     lower(列名|字符串)函数用于返回字符串的小写形式。         eg.SELECT ename,sal FROM emp WHERE ename=lower(\\\'ename\\\');     upper(列名|字符串)函数用于返回字符串的大写形式。       

    2024年02月08日
    浏览(12)
  • 数据库系统概述——第三章 关系数据库标准语言SQL(知识点复习+练习题)

    数据库系统概述——第三章 关系数据库标准语言SQL(知识点复习+练习题)

    🌟 博主: 命运之光 🦄 专栏: 离散数学考前复习(知识点+题) 🍓 专栏: 概率论期末速成(一套卷) 🐳 专栏: 数字电路考前复习 🦚 专栏: 数据库系统概述 ☀️ 博主的其他文章: 点击进入博主的主页​​​​​ 前言: 身为大学生考前复习一定十分痛苦,你有没有过

    2024年02月10日
    浏览(13)
  • SQL 50 题(MySQL 版,包括建库建表、插入数据等完整过程,适合复习 SQL 知识点)

    SQL 50 题(MySQL 版,包括建库建表、插入数据等完整过程,适合复习 SQL 知识点)

    ① 本文整理了经典的 50 道 SQL 题目,文本分为 建库建表 、 插入数据 以及 SQL 50 题 这三个部分。 ② 这些题目许多博主也整理过,但本人不太了解这些题目具体的出处。第一次了解这些题目是本科期间老师出的题目。如果有网友知道这些题目的最原始出处,可以在评论评论区

    2024年02月07日
    浏览(11)
  • SQL高级知识点

    MySQL基础 1、安装    1)设置编码    2)设置密码 2、配置文件:my.ini、my.cnf    1)设置端口号      port=3306    2)设置编码    3)存储引擎     4)最大连接数    注意:重启mysql服务 3、登陆mysql数据库    问题:\\\"mysql\\\"不是系统内部或外部命令....    解决:将mysql的bin目录配置到

    2024年02月10日
    浏览(11)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包