Sql 如何绕过内部联接中的“循环引用”
在我的内部连接中,我有以下“循环依赖”,你有什么想法可以绕过它吗Sql 如何绕过内部联接中的“循环引用”,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,在我的内部连接中,我有以下“循环依赖”,你有什么想法可以绕过它吗 SELECT *FROM Reference INNER JOIN ReferenceInActivity ON Activity.ActivityID = ReferenceInActivity.ActivityID INNER JOIN @tbActivity AS Activity ON ReferenceInActivity.ReferenceID = Reference.ReferenceID 我得到一个错误:
SELECT *FROM Reference
INNER JOIN ReferenceInActivity ON Activity.ActivityID = ReferenceInActivity.ActivityID
INNER JOIN @tbActivity AS Activity ON ReferenceInActivity.ReferenceID = Reference.ReferenceID
我得到一个错误:
Msg 4104,16级,状态1,第387行
无法绑定多部分标识符Activity.ActivityID。在from语句或join语句的查询中包含活动之前,您正在on语句中使用活动。像这样切换你的陈述:
SELECT *
FROM Reference
INNER JOIN ReferenceInActivity
ON ReferenceInActivity.ReferenceID = Reference.ReferenceID
INNER JOIN @tbActivity AS Activity
ON Activity.ActivityID = ReferenceInActivity.ActivityID
在将活动包括在from语句或join语句的查询中之前,您正在on语句中使用该活动。像这样切换你的陈述:
SELECT *
FROM Reference
INNER JOIN ReferenceInActivity
ON ReferenceInActivity.ReferenceID = Reference.ReferenceID
INNER JOIN @tbActivity AS Activity
ON Activity.ActivityID = ReferenceInActivity.ActivityID