zoukankan      html  css  js  c++  java
  • in 改写优化案例

    l凌晨1点开发迁移业务告知sql响应有问题,赶紧爬起来看看

    6000w的大表,没走索引导致查询了50s,执行计划如下

     desc select a, b, c, d from table where FIND_IN_SET(a,'MD5value1,MD5value2');
    +----+-------------+------------+------+---------------+------+---------+------+----------+-------------+
    | id | select_type | table      | type | possible_keys | key  | key_len | ref  | rows     | Extra       |
    +----+-------------+------------+------+---------------+------+---------+------+----------+-------------+
    |  1 | SIMPLE      | table | ALL  | NULL          | NULL | NULL    | NULL | 60435142 | Using where |
    +----+-------------+------------+------+---------------+------+---------+------+----------+-------------+
    1 row in set (0.01 sec)
    

    使用了in导致查询没有走索引改写为union all sql秒出结果

    select a, b, c, d from table where a='md5value1'
    union all
    select a, b, c, d from table where a='MD5value2';    

    看下执行计划

    +----+--------------+------------+-------+---------------+---------+---------+-------+------+-----------------+
    | id | select_type  | table      | type  | possible_keys | key     | key_len | ref   | rows | Extra           |
    +----+--------------+------------+-------+---------------+---------+---------+-------+------+-----------------+
    |  1 | PRIMARY      | table | const | PRIMARY       | PRIMARY | 302     | const |    1 | NULL            |
    |  2 | UNION        | table | const | PRIMARY       | PRIMARY | 302     | const |    1 | NULL            |
    | NULL | UNION RESULT | <union1,2> | ALL   | NULL          | NULL    | NULL    | NULL  | NULL | Using temporary |
    +----+--------------+------------+-------+---------------+---------+---------+-------+------+-----------------+
    3 rows in set (0.03 sec)
    

     

  • 相关阅读:
    min25筛学习笔记
    【模板】回滚莫队&不删除莫队
    UOJ#188. 【UR #13】Sanrd
    LOJ#572. 「LibreOJ Round #11」Misaka Network 与求和
    Product
    Lcm
    点是否在三角形内的判断
    今天学会了 在Linux下,用GCC编译C语言程序,mark下
    让你沉迷的五种设计
    搞清楚了自发光特效的制作原理,3张图,3个步骤
  • 原文地址:https://www.cnblogs.com/weiwenbo/p/9257414.html
Copyright © 2011-2022 走看看