我的第二个问题很容易解释,但我很难解决。
当这个table_Name来自另一个Select
时,我想从table_Name中选择值以此为例:
首先选择
SELECT
(SELECT ad_table.tablename
FROM ad_table
WHERE ad_table.ad_table_id =fact_acct.ad_table_id
)
FROM fact_acct
结果= C_Invoice
第二次选择
SELECT documentNo
FROM
(SELECT
(SELECT ad_table.tablename
FROM ad_table
WHERE ad_table.ad_table_id =fact_acct.ad_table_id
)
FROM fact_acct
)
此选择必须与:SELECT documentNo from C_Invoice
所有想法?
答案 0 :(得分:1)
使用动态SQL查询 试试这个
DECLARE @TableName NVARCHAR(MAX)
DECLARE @Sql NVARCHAR(MAX)
SELECT @TableName = ad_table.tablename
FROM ad_table
WHERE ad_table.ad_table_id =fact_acct.ad_table_id
SET @Sql='SELECT documentNo FROM '+@TableName
EXEC(@Sql)