日期:2014-05-17  浏览次数:20638 次

在查询里调用函数是否影响效率?
比如select t.f1,t.f2,dbo.fn_x(t.f3) 
from t
where ...

其中,dbo.fn_x()函数包含一个查询,比如
select sum(x)
from tt
where ff=@ff

这样写是不是效率就慢了?

如果希望达到相同的功能,把fn_x的查询转换成一个视图,然后在第一个查询里关联这个视图,不再调用函数,是不是就更高效些?
------解决方案--------------------
移除函数调用能有更好的性能