C# 表被指定两次,都作为';更新';并作为单独的数据源
我试图更新一列中的多行,但执行查询时出错。有人指导我哪里错了。提前谢谢C# 表被指定两次,都作为';更新';并作为单独的数据源,c#,mysql,database,C#,Mysql,Database,我试图更新一列中的多行,但执行查询时出错。有人指导我哪里错了。提前谢谢 UPDATE TestTaker SET TestTaker.Email = 'Replaced' WHERE TestTaker.Id IN (SELECT TestTaker.Id FROM TestTaker INNER JOIN Questionnaire ON (TestTaker.id = Questionnaire.TestTaker_id) WHERE Questionnaire.Proj
UPDATE TestTaker
SET TestTaker.Email = 'Replaced'
WHERE TestTaker.Id IN (SELECT TestTaker.Id FROM TestTaker
INNER JOIN Questionnaire ON (TestTaker.id = Questionnaire.TestTaker_id)
WHERE Questionnaire.Project_id IN(SELECT Project.Id FROM Project WHERE NAME LIKE 'abcd'));
您在该查询中多次使用表“TestTaker”,因此必须为该表指定一个“别名”,并且必须为使用该表的每一列指定该别名。 或者尝试简化查询,如下所示
UPDATE TestTaker
SET TestTaker.Email = 'Replaced'
WHERE TestTaker.Id IN ( SELECT Questionnaire.TestTaker_id
FROM Questionnaire
WHERE (TestTaker.id = Questionnaire.TestTaker_id)
AND Questionnaire.Project_id IN( SELECT Project.Id
FROM Project WHERE NAME LIKE 'abcd')
);
您得到了什么错误?查询得到错误?您遇到了什么错误?@MarkB'表被指定了两次,既作为“更新”的目标,也作为“数据”的单独源。这是错误。您在该查询中多次使用表“TestTaker”,可能是重复的,因此,您必须为该表分配一个“别名”,并且必须为您使用的每一列指定此别名。非常感谢。你解决了我的问题。它奏效了:)