SQL语句的优化(常规SQL语句的优化)
一、常规SQL语句的优化
1.1、不用 “ * ” 代替所有的列名。因为这样操作的时候 ,系统会通过数字字典将“ * ”转换成表的所有列名,会消耗大量的系统时间,查询速度比较的慢;
1.2、用truncate代替delete。使用delete删除数据,oracle会使用撤销表空间来存放恢复的信息,使用commit提交才会删除表数据,如果不使用commit进行提交,数据可以恢复到删除之前的状态;使用truncate会对表的数据直接删除,速度比较的快,不过也不能任何时候都使用truncate,当删除表中的某一条数据时使用delete;
1.3、在确保数据完整性的情况下多使用commit语句。使用commit语句可以实现DML语句的快速提交,可以快速的释放事务占用的资源,提高性能;
1.4、减少表查询的次数。在含有子查询的SQL语句中,尽量减少多表的查询:
低效率SQL:
SELECT NAME,
age,
sex
FROM student
WHERE age IN(