0

我有一个my_ids单列表id。接下来,我有一个表值函数fn_getMatches(id)。我想要的是遍历表my_ids和每个id调用函数fn_getMatches(id)并将所有结果汇总到一个表中。如果没有显式循环,我该怎么做?

我试过了:

select *
from my_ids ids
     full outer join fn_getMatches(ids.id) on 1=2
where ids.id is null

但它返回:

消息 4104,级别 16,状态 1,第 11 行
无法绑定多部分标识符“ids.id”。

4

2 回答 2

3

不知道该函数的作用或您期望的结果,也许可以尝试:

select * -- name your columns!
from dbo.my_ids AS ids -- use schema prefix!
cross apply dbo.fn_getMatches(ids.id); -- use schema prefix!

从您最初的尝试中删除了WHERE条款和标准。ON

于 2012-09-14T17:25:57.633 回答
1
SELECT  *
        FROM my_ids ids
        CROSS APPLY fn_getMatches(ids.id)

我不太明白你的 WHERE 子句,因为这似乎意味着你ids.id事先知道 的价值,而且它总是NULL.

于 2012-09-14T17:27:00.320 回答