存储过程查询过慢,不知道怎么优化 help
CREATE proc search_SO
@star_time varchar(40),
@end_time varchar(40),
@custom varchar(30)
as
select distinct account,rec_date,datename(weekday,rec_date)weeks,rh.so_no,(length*width*height*ctns) as tiji
into #so from rechead rh inner join recdtl rd on rh.so_no=rd.so_no where rec_date>=@star_time and rec_date<@end_time and account like @custom+'%'
select distinct b.account,Vehicleid,b.so_no,b.rec_date,b.weeks,sum(tiji/1000000)tiji,supplier from
(select a.account,rec_date,weeks,a.so_no,rec_no,a.tiji from
#so a
left join in2so so on a.so_no=so.so_no)b left join inhead ih on b.rec_no=ih.rec_no
group by b.account,Vehicleid,b.so_no,b.rec_date,b.weeks,supplier
以上查询我是通过临时表查询,但是太慢了,像这样表嵌套表的查询有什么方法可以优化一下,让速度再快一点呢,还有,一些日期截取,还有时期转星期.....等这些函数转换是不是也会影响到速度呢?