PL/SQL语句优化

  1. SELECT 字段时,尽量少用t.*这样的写法,只写出需要查询的列名即可;

  2. 多表查询时多用表别名,书写规范,使用AS关键字;

  3. 查询条件多用where,having关键字主要是对聚合后结果进行过滤;

  4. 尽量不对索引列进行计算操作,如where sum(a+b)>3;

  5. 指定查询范围时多用exist,少用in,and和or;

参考:sql语句大全之SQL性能优化(不断总结)

  1. TRUNCATE和DELETE 的区别:TRUNCATE相当于清空表不可删除;delete删除某些满足条件的数据在提交事务前可回退。

  2. 尽量使用大写字母写SQL,提高数据库识别语句速度;

  3. 从提升性能的角度,少用!=,可使用>或<;

  4. 尽量不适用NULL关键词判空;可在设计数据库时不允许空值或者用默认值代替空值;

  5. 使用rowid删除重复数据;通过ROWID删除重复数据;

    DELETE FROM person t1
    WHERE t1.rowid > (SELECT MIN(t2.rowid)
                   FROM employees t2
                   WHERE t1.employee_id = t2.employee_id --按照想要唯一保留的字段进行匹配
                 );

11.为查询条件中用到的列使用索引。

posted @ 2020-01-15 15:49  Peninsula  阅读(268)  评论(0编辑  收藏  举报