美文网首页SQL
sql--性能优化

sql--性能优化

作者: vsu | 来源:发表于2018-10-08 15:03 被阅读0次

    2018-10-08

    查询的模糊匹配:尽量避免在一个复杂查询里面使用模糊匹配

    索引问题:缺少合适的索引
    法则:不要在建立的索引的数据列上进行下列操作:
    避免对索引字段进行计算操作
    避免在索引字段上使用not,<>,!=
    避免在索引列上使用IS NULL和IS NOT NULL
    避免在索引列上出现数据类型转换
    避免在索引字段上使用函数
    避免建立索引的列中使用空值。

    复杂操作:部分select、update语句写的很复杂。可以考虑拆成几步

    update:同一个表的修改在一个过程里出现很多次。整合到一个语句

    在可以使用UNION ALL的语句里使用了UNION:UNION 因为会将各查询子集的记录做比较,故比起UNION ALL ,通常速度都会慢上许多。

    在WHERE 语句中,尽量避免对索引字段进行计算操作

    对Where 语句的法则:
    避免在WHERE子句中使用in,not in,or 或者having
    不要以字符格式声明数字,要以数字格式声明字符值。(日期同样)
    WHERE后面的条件顺序影响

    对Select语句的法则:在应用程序、包和过程中限制使用select * from table这种方式。

    排序:避免使用耗费资源的操作
    带有DISTINCT,UNION,MINUS,INTERSECT,ORDER BY的SQL语句会启动SQL引擎 执行,耗费资源的排序(SORT)功能. DISTINCT需要一次排序操作, 而其他的至少需要执行两次排序

    临时表:慎重使用临时表可以极大的提高系统性能

    相关文章

      网友评论

        本文标题:sql--性能优化

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