我有一个存储过程,它在其中使用一个函数,并且该函数需要两个参数。我的问题与性能问题有关,见下文
CASE
WHEN (DATEDIFF(MINUTE,dbo.FunctionName(DatetimeField, DatetimeID), dbo.FunctionName(DatetimeField, DatetimeID))/60.0) > 8 THEN
(DATEDIFF(MINUTE,dbo.FunctionName(DatetimeField, DatetimeID), dbo.FunctionName(DatetimeField, DatetimeID))/60.0)
Else 0
END
Else
0
END)
Else
(DATEDIFF(MINUTE,dbo.FunctionName(DatetimeField, DatetimeID), dbo.FunctionName(DatetimeField, DatetimeID))/60.0)-T.lunch
END
as 'Total'
现在我要做的是创建一个临时表,这样我就可以使用它来调用函数,而不是每次到达那些需要通过数十万条记录的行时调用函数的方式。任何帮助表示赞赏。