1
比方说,我有一个名为MyAssembly
的程序集,其类别MyClass
有一个MyFunction(long timestamp)
方法(它将datetime作为字符串以YYYY-MM-DD HH24:mm:ss
的格式返回)。如果我创建一个脚本这样的工作:即使参数相同(连续),函数是否会被多次调用?
@outputData =
SELECT MyAssembly.MyClass.MyFunction(t1.timestamp).Substring(0,4) AS Year
,MyAssembly.MyClass.MyFunction(t1.timestamp).Substring(...) AS Month
,MyAssembly.MyClass.MyFunction(t1.timestamp).Substring(...) AS Day
,MyAssembly.MyClass.MyFunction(t1.timestamp).Substring(...) AS Hour
,MyAssembly.MyClass.MyFunction(t1.timestamp).Substring(...) AS Minute
,MyAssembly.MyClass.MyFunction(t1.timestamp).Substring(...) AS Second
FROM @queryInput AS t1
会在功能被多次调用或将系统是“聪明”,足以把它只有一次,使用返回值的其他列?如果不是,我有什么选择?