不明确的表更新查询

时间:2017-09-19 17:47:24

标签: sql sql-server

我收到错误消息“表格含糊不清。我正在使用别名,所以不确定为什么表格不明确。这是我的代码:

UPDATE Field_Translations
    SET SourceColumn1='EnteredProduct'
        ,SourceValue1=I.Product
        ,TargetColumn1='NewProduct'
        ,TargetValue1='Not Reported'
        ,TargetColumn2='NewProductId'
        ,TargetValue2=-1
    FROM Org8_28_17 I
        LEFT JOIN Field_Translations FT ON I.Vendor=FT.SourceValue1 AND FT.SourceColumn1='HGVendor'
        LEFT JOIN Field_Translations FT2 ON I.Product=FT2.SourceValue1 AND FT2.SourceColumn1='HGProduct' 
    WHERE FT.TargetValue1 IS NOT NULL AND FT2.TargetValue1 IS NULL --AND I.Product like '%(%'
        AND I.Vendor=I.Product AND I.Vendor=FT.TargetValue1

1 个答案:

答案 0 :(得分:6)

如果在FROM子句中为表名设置别名,则必须使用UPDATE子句中的别名:

UPDATE FT

UPDATE Field_Translations

您对Field_Translations的使用含糊不清,因为您已加入两次。