【发布时间】:2016-11-15 11:43:37
【问题描述】:
我有这样的场景。我需要在SELECT 语句中执行一个存储过程,其中调用存储过程的输入参数取自SELECT 语句中使用的表。此外,还有多个函数调用如下,它们使用SELECT 子句中使用的表中的输入,但由于某种原因它不起作用。这是我正在尝试实现的代码示例,如下所示。
代码示例:-
SELECT A,
B,
dbo.storedproc( function1(A,B),
function1(A,B),
function2(B,C),
D
) AS newcol,
D
FROM Table;
错误:-
消息 4121,级别 16,状态 1,程序 XYZ,第 34 行
找不到列“schemaname”或用户定义的函数或聚合“schemaname.dbo.storedproc”,或者名称不明确。
注意:- 我使用基于集合的方法为输入表中的所有行调用此存储过程。
【问题讨论】:
-
不,你不能这样做。应该是标量函数或者动态sql。
-
我有一个很长的 CTE 链,在其中一个 CTE 中我正在尝试实现此功能....
标签: sql sql-server tsql