【发布时间】:2011-10-09 12:08:13
【问题描述】:
可能重复:
SQL Delete: can't specify target table for update in FROM clause
我只有一张表(将此表称为 TAB),代表大学考试。我有以下属性:CourseName、CourseCode 和 year。我想删除所有基数小于 100 的课程。如果我输入
select CourseName from TAB group by CourseName having count(CourseName) < 100;
我有一个确切的结果。但是,如果我想删除这些条目,我会尝试使用
delete from TAB where CourseName not in (select CourseName from TAB group by CourseName having count(CourseName) > 100);
但是系统返回错误:
错误代码:1093 您不能在 FROM 子句中指定目标表 'TAB' 进行更新
我必须如何删除这些记录?
【问题讨论】:
标签: mysql sql syntax sql-delete