2017-06-21 51 views
0

我有一个基于表的函数,可以获取模块的所有文章。 我想用这个功能从子句如下MSSQL:从子句中的消息4104

select k.ArtNo as baugruppe, g.* 
from anw.artikel k, dbo.getmengenuebersicht (k.ArtNo) g 
where k.ArtNo='5000062217' 

我收到以下错误

消息4104,级别16,状态1,2号线 多部分标识符“k.ArtNo”不能被绑定。

并没有任何线索为什么会发生这种情况。

回答

0

如果getmengenuebersicht是表值函数,你应该使用CROSS APPLY,这样就可以从artikel调用它时引用的列:

select k.ArtNo as baugruppe, g.* 
from anw.artikel k cross apply dbo.getmengenuebersicht (k.ArtNo) g 
where k.ArtNo='5000062217' 

而且,在一般情况下,你不应该using , joins在你的FROM条款。在1992年ANSI标准加入了SQL标准--12个季度的世纪之前。