很多人认为性能调优是数据库管理员的工作,但其实提高数据库SQL语句执行速度,程序员也可以解决。 1、明知只有一条查询结果,那请使用“LIMIT 1” “LIMIT 1”可以避免全表扫描,找到对应结果就不会再继续扫描了。 2、将大的DELETE,UPDATE or INSERT查询变成多个小查询 能写一个几十行、几百行的SQL语句是不是显得逼格很高?然而,为了达到更好的性能以及更好的数据控制,你可以将他们变成多个小查询。 3、使用UNION ALL代替UNION,如果结果集允许重复的话 因为UNION ALL不去重,效率高于UNION。 4、尽量避免使用“SELECT*” 如果不查询表中所有的列,尽量避免使用SELECT*,因为它会进行全表扫描,不能有效利用索引,增大了数据库服务器的负担,以及它与应用程序客户端之间的网络IO开销。 5、ORDER BY的列尽量被索引 ORDER BY的列如果被索引,性能也会更好。 6、使用EXPLAIN关键字去查看执行计划 EXPLAIN可以检查索引使用情况以及扫描的行。 |
|