我有一个表函数,它包含一些CTE表,最终汇总到返回的select语句。在其中一个CTE表中,我使用了@variable。这是我为函数声明的@variable。当我尝试保存该功能时,我收到此错误:
ApplicationController
在CTE表中使用@variable是否有问题?我可以提供代码,但似乎没有将函数@variable传递给CTE表,所以编译器不喜欢它。
Lookup Error - SQL Server Database Error: Parameters were not supplied for the function 'forecast_baseline'.
答案 0 :(得分:2)
错误是因为您已将CTE
命名为您的函数名称。更改第二个CTE
名称:
...
WHERE
DATEADD(month, @Interval, enddatetimemonth) < @EndTime
),
forecast_baseline (
...
以任何其他名称。
此外,您需要在结果表中使用UNION ALL
而不是单独的2个插入,因为您只有1次查询CTE
的可能性。您无法多次查询CTE
。