select no2 empid,c.workno,sum(qty) qty,max(wlevel) wlevel into #Emp_Level
from salary a inner join Wlevel c
on right(a.workno,3)=c.workno
where (a.date1 between @starttime and @endtime) and (@empid=''or a.no2 =@empid)
group by no2,c.workno
order by no2这条SQL运行要7秒钟,但是我把(@empid=''or a.no2 =@empid)改为( a.no2 =@empid or @empid='')
就要运行22秒钟,请问这是什么问题导致的呢,谢谢各位!!!
from salary a inner join Wlevel c
on right(a.workno,3)=c.workno
where (a.date1 between @starttime and @endtime) and (@empid=''or a.no2 =@empid)
group by no2,c.workno
order by no2这条SQL运行要7秒钟,但是我把(@empid=''or a.no2 =@empid)改为( a.no2 =@empid or @empid='')
就要运行22秒钟,请问这是什么问题导致的呢,谢谢各位!!!
from salary a inner join Wlevel c
on right(a.workno,3)=c.workno
where (a.date1 between @starttime and @endtime) and (a.no2 =@empid or @empid='')
group by no2,c.workno
order by no2这条SQL运行要7秒钟,但是我把( a.no2 =@empid or @empid='') 改为
(@empid=''or a.no2 =@empid)
就要运行22秒钟,请问这是什么问题导致的呢,谢谢各位!!!
不过可以打开查询分析器的“显示执行计划”,先后执行这语句,应该可以从SQL的执行计划看出个大概来