zoukankan      html  css  js  c++  java
  • index使用基本原则

    单表

    • 尽量查询的字段按照顺序在索引中都可以匹配到(尽量多使用索引,复合索引要充分利用)
    • 最前缀原则:过滤条件要使用索引必须按照索引建立时从左的顺序, 依次满足, 一旦跳过某个字段, 索引后面的字段都无法被使用
    • 索引列不能做函数参数 或者 是表达式的一部分(不能计算)
    • 索引列不能进行隐藏式类型转换
    • 尽量索引覆盖:查询列和索引列一致, 不要写 select *
    • 字段可以为空时,is not null 用不到索引, is null 可以用到索引
    • mysql 在使用不等于(!= 或者<>)时, 有时会无法使用索引会导致全表扫描
    • 索引列上不能有范围查询。范围查询后的索引列,后面的索引列会失效,建议将可能做范围查询的字段的索引顺序放在最后
    • like
      • like '%...' 索引会失效。用索引覆盖可以解决问题,索引覆盖后,索引不会失效
      • like '...%' 索引不会失效
    • 减少使用or,用union代替

    多表

    • 关联查询时, 只有在被驱动表上建立索引才有效!大表上建索引,数据查的快
    • 小表驱动大表,小表左边,大表右边(用left join时)
    • 小表驱动大表,大表左边,小表右边(用right join时)
    • inner join 时,mysql会自己帮你把小结果集的表选为驱动表,大结果集选为被驱动表
    • 能够直接多表关联的尽量直接关联, 不用子查询!
  • 相关阅读:
    关于工作
    5种风格的 jQuery 分页效果【附代码】
    轮播图jquery
    Microsoft.AspNetCore.Localization 自定义多语言获取
    10-微信小程序 WXS
    9-微信小程序引用
    8-微信小程序 事件
    7-微信小程序 模板(template)
    6-微信小程序 条件渲染 wx:if
    5-微信小程序 列表渲染 wx:for
  • 原文地址:https://www.cnblogs.com/wasitututu/p/13585157.html
Copyright © 2011-2022 走看看