在数据库开发的过程中有很多经典的优化例子;下面就是其中之一,这个SQL是要找日期的最小的值,这种情况通常大家会遇到;在写代买时特别留意,会有帮助;
原始的SQL语句:
SELECT * from Table_A T01,
(SELECT MIN(TRDT) TRDT FROM table_A ) T02
WHERE T01.TRDT=T02.TRDT;
第一次优化的语句:
SELECT * from Table_A
WHERE T01.TRDT=(SELECT MIN(TRDT) TRDT FROM table_A );
是不是还可以继续优化呢:
接着再来:
SELECT * from Table_A
group by trdt,line,mcno
having trdt=min(trdt);
这三项的Cost,以及执行消耗的时间结果
Item Cost_Summary 执行语句消耗时间
原语句 48 125毫秒
第一次优化 26 78毫秒
第二次优化 20 31毫秒
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30193/viewspace-767087/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30193/viewspace-767087/