使用table.column作为参数将表连接到表函数

时间:2015-05-15 17:19:00

标签: tsql

有没有办法发表一种声明:

SELECT <table>.ID, <table>.Parameter
FROM <table> t
  JOIN <tableValuedFunction> (<table>.Parameter) tt ON t.ID = tt.ID

2 个答案:

答案 0 :(得分:0)

我认为您所使用的是使用cross apply的查询。

SELECT <table>.ID, <table>.Parameter
FROM <table> t
CROSS APPLY <tableValuedFunction> (<table>.Parameter)

答案 1 :(得分:-1)

在Sql Server中,使用带有dinamic查询的EXEC:

Declare @sSql Varchar(max)
Declare @table VArchar(25) = 'table'
declare @colum VArchar(25) = 'column'

SET @sSql = 'SELECT table.ID, table.Parameter
            FROM table t
            JOIN tableValuedFunction ('''+@table+'.'+@colum+''') tt ON t.ID = tt.ID'

EXEC (@sSql)