• ADADADADAD

    mysql select的审核有哪些[ mysql数据库 ]

    mysql数据库 时间:2024-11-26 22:13:28

    作者:文/会员上传

    简介:

    · 禁止使用select *,只获取必要字段解读:(1)select *会增加cpu/io/内存/带宽的消耗(2)指定字段能有效利用索引覆盖(3)指定字段查询,在表结构变更时,能保证对应用程序无影响· insert

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    · 禁止使用select *,只获取必要字段

    解读:

    1select *会增加cpu/io/内存/带宽的消耗

    2)指定字段能有效利用索引覆盖

    3)指定字段查询,在表结构变更时,能保证对应用程序无影响

    · insert必须指定字段,禁止使用insert into T values()

    解读:指定字段插入,在表结构变更时,能保证对应用程序无影响

    · 隐式类型转换会使索引失效,导致全表扫描

    · 禁止在where条件列使用函数或者表达式

    解读:导致不能命中索引,全表扫描

    · 禁止负向查询以及%开头的模糊查询

    解读:导致不能命中索引,全表扫描

    以5万数据为临界点。。。超过5万 就不使用like 必须修改

    · 禁止大表JOIN和尽可能避免子查询

    · 同一个字段上的OR必须改写问IN,IN的值必须少于50个

    · 应用程序必须捕获SQL异常

    解读:方便定位线上问题,

    查看执行计划可知子查询在相同条件下是会比表关联多一个步骤的

    同时会产生一个临时表。。

    关联查询的效率 比 子查询效率更好

    · 5.6之后的mysql关联表查询可以使用in 但是禁止使用exist

    In的执行方式已经在5.6及之后的版本优化过了

    Exist 还是老的执行方式。禁止使用

    mysql select的审核有哪些.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysqlselect