• 尚硅谷mysql2


    p137 explain之select_type &type& key

    type 效果递减

    system
    在这里插入图片描述
    const
    在这里插入图片描述
    eq_ref
    在这里插入图片描述
    ref
    在这里插入图片描述
    ref_or_null
    在这里插入图片描述
    index_merge
    在这里插入图片描述
    unique_subquery
    在这里插入图片描述
    range
    在这里插入图片描述
    index
    这里要查询的字段和条件都在联合索引中,不是第一列,但是没有索引失效
    在这里插入图片描述

    小结:
    在这里插入图片描述

    key

    在这里插入图片描述
    在这里插入图片描述

    keylenth

    联合索引下 越长越好

    p138 explain中ref rows filtered extra剖析

    rows
    在这里插入图片描述
    filtered
    在这里插入图片描述

    p141 数据准备 与索引失效的11种情况

    在这里插入图片描述

    全值匹配

    联合索引比单列索引更快

    最左匹配原则

    在这里插入图片描述

    主键插入顺序

    主键最好自增,否则会产生页分裂,影响性能

    计算、函数、类型转换(自动或手动)导致索引失效

    字段使用函数会导致索引失效
    在这里插入图片描述
    类型转转导致索引失效
    在这里插入图片描述

    p142 索引失效的11种情况

    范围条件右边的列索引失效

    创建时索引字段顺序改变一下可以解决
    在这里插入图片描述
    在这里插入图片描述

    不等于(!= 或者<>)索引失效

    is null可以使用索引,is not null无法使用索引

    在这里插入图片描述

    like以通配符%开头索引失效

    在这里插入图片描述

    OR 前后存在非索引的列,索引失效

    1 数据库和表的字符集统一使用utf8mb4

    统一使用utf8mb4( 5.5.3版本以上支持)兼容性更好,统一字符集可以避免由于字符集转换产生的乱码。不
    同的 字符集 进行比较前需要进行 转换 会造成索引失效

    小结:

    在这里插入图片描述

    p143 外连接与内连接查询优化

    在这里插入图片描述
    在这里插入图片描述

    p144 join语句底层原理

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    上面这个左外查询会被优化器优化为内连接查询
    当优化为内连接查询之后,优化器决定先查询哪张表,哪张表就是驱动表

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    p145 子查询优化和排序优化

    在这里插入图片描述

    因为需要回表,索引没有生效,优化器觉得数据量过大,成本较大
    在这里插入图片描述
    如果只查询索引字段,不用回表,这时候索引就会生效
    在这里插入图片描述
    加上limit只取10条,这时候索引又生效了,因为10条数据回表成本较低
    在这里插入图片描述
    在这里插入图片描述

    P146 group by优化 分页查询优化

    在这里插入图片描述

    在这里插入图片描述

    p148 索引条件下推 icp

    情况1
    在这里插入图片描述
    情况2

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    p149其他查询优化策略

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    p151 152三大范式

    在这里插入图片描述

    p153反范式

    在这里插入图片描述

    p161事务的ACID特性与事务的状态

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    day03-2无异常退出
    小侃设计模式(六)-适配器模式
    JavaScript 中的 apply、call、bind
    谷粒学苑 —— 5、课程分类管理
    山西省行政村边界数据/乡镇街道边界数据/行政区划边界分布
    《在线编程-Python篇》Python入门 01 输入输出
    803_div2(日常垫底- XOR Mixup
    RabbitMQ如何实现消费端限流
    Uniapp扫码预览连接地址与手机不在同一网段
    python接口自动化测试之接口数据依赖
  • 原文地址:https://blog.csdn.net/weixin_44229645/article/details/127939886