我正在将遗留应用程序的旧存储过程转换为较新的应用程序。
SELECT ContainerID, SizeID.Desc, TypeID.Desc, UOMID.Desc
FROM [Online].dbo.Master
INNER JOIN [Online].dbo.Type TypeID ON Master.TypeID = TypeID.NumID
INNER JOIN [Online].dbo.Size SizeID ON Master.SizeID = SizeID.NumID
INNER JOIN [Online].dbo.Measure MeasureID ON Master.MeasureID = MeasureID.NumID
当我运行此操作时,我在另一个数据库中的3列中收到无效的列名错误,我应该同步,我不知道为什么。
答案 0 :(得分:0)
多个表具有相同的字段,因此引擎不知道您引用的是哪个字段。并导致该模糊错误。
boost
使用类似
的内容 SELECT ContainerID, SizeID, TypeID, UOMID
^^
can came from Master or Type
如果要从两个表中获取值,则需要使用别名来进行差异化。
SELECT ContainerID, Master.SizeID, Master.TypeID, UOMID