无法绑定由多个部分组成的标识符
Msg 4104, Level 16, State 1, Server CHENQH, Procedure , Line 0
无法绑定由多个部分组成的标识符 “b.ACTOR_ID”。
[42000] [Microsoft][SQL Server Native Client 11.0][SQL Server]无法绑定由多个部分组成的标识符 “b.ACTOR_ID”。 (4104)
造成这种原因两种
1、联合查询的条件有重复的,未指定哪个表的字段信息
例 a表有id,b表也有id, select id from a left join b on a.id=b.id
这时候查询条件的id没有标明是哪个表的id就会出现这个问题
2、查询条件时未指定联合查询的表,查询条件就直接用另一个表的字段了
例可能在别的语言里面会有拼接sql的写法,比如java,jdbc方式,sql语句是动态的
sql: select*from a 在此基础做sql语句的拼接
理想拼接后的sql:select*from a left join b on a.id=b.id where b.id=xxx
实际拼接后的sql: select*from a where b.id=xxx
下面这情况就会造成这个错误,所以做这种拼接sql的时候打印一下sql语句是否出现问题