SQL优化一例:懂得去除累赘,还你一身轻松

在生产库发现了一条奇葩SQL,下面进行分析。

问题1:count()统计行数的时候,排序操作是多余的。

问题2:left join连接中,以左表为主表,和右表通过关联条件连接,A表满足条件的数据都会被返回,而B表中没有的数据则以NULL表示。上面的SQL中T表left join P表,但是SQL中P表并没有任何过滤条件,所有过滤都是T表在做,那么P表完全没有必要写上。写在这里完全没有作用,这一点可以通过执行计划证明,执行计划中没有任何P表的信息。

优化后的SQL,去除order by,去除P表。

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注