我正在尝试更新一列中的多行,但是当我执行查询时出现错误。有人指导我哪里错了。提前致谢
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')
);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)