加入从先前加入中检索的表格

时间:2012-06-22 13:44:31

标签: sql sql-server-2008 join

我是如何在从先前连接的表中的数据中检索的表上创建连接的?例如,我有一个对象表,其中包含现有的表名,这些表的显示字段以及这些表的主ID字段。我想加入对象表中指定的表以及对象表。

 select T.field1,T.field2,T.field3,O.DisplayName
 from tableT as T
 inner join objects as O on T.SystemObjectID = O.SystemObjectID
 inner join O.TableName as X on X.O.ID = T.SystemObjectRecordID

我理解上面的脚本不正确。但是,完成此任务的最简单最有效的方法是什么?我希望我清楚我要问的是什么......

感谢您提前提供任何帮助。

1 个答案:

答案 0 :(得分:1)

你做不到。

您可以做的是获取结果并创建一个SQL查询字符串。

您甚至可以对该查询进行参数化并使用sp_executesql执行它 - 这个链接有一些很好的例子可以帮助你入门。


这是因为SQL在执行之前被编译为执行计划。此时,它需要知道表,决定要使用的索引等等。

这意味着数据是数据,sql是sql。您不能使用后期绑定脚本技巧来修改已在运行的查询。

我很害怕写SQL (动态SQL)的SQL。