sql优化

作者: 大涛先生 | 来源:发表于2019-10-07 15:07 被阅读0次

    1. 避免全盘扫描.

    select * from table -> *会引起全盘扫描.

    用谁查谁.

    select * from table where like %xx%  -> like会引起全盘扫描.

    solr,es. -> 使用第三方搜索引擎.

    select... where column is [not] null -> 对null进行判断时.

    字段设置为not null,设置默认值为0.

    select.. 条件1 or 条件2 -> 使用or链接条件.

    可以使用数据库提供的集合操作.

    select.. 条件中尽量避免使用!= , <>  -> 不等于尽量少用.

    select... where exists (查询 . )

    select... in , not in -> 尽量避免使用.

    select... where exists (查询 . )

    ...

    explain查看sql语句执行计划.

    2. 添加索引(不要随便加).

    1. 索引生效.

    2. 根据索引类型的不同,在使用时需要注意. (Btree,Hash).

    3. 一个表中的索引不要添加太多.可能会影响到增删.

    ... ...

    3. 使用第三方.(用钱顶.)

    1. mybatis提供了一级缓存和二级缓存.

    2. 使用中间件添加缓存.  NoSql(redis).

    3. 使用中间件来实现全文搜索.  es(倒排索引).

    4. 分库分表. mycat.

    相关文章

      网友评论

          本文标题:sql优化

          本文链接:https://www.haomeiwen.com/subject/qqfmpctx.html