mySQL是否使用字段从一个表中删除,并与另一个表自然连接?

mySQL是否使用字段从一个表中删除,并与另一个表自然连接?,mysql,phpmyadmin,Mysql,Phpmyadmin,从takes表中,我试图删除所有注册BIOL101的Jane SELECT给了我一组正确的ID和课程ID,我只是想从takes表中删除它们。在理解正确的语法方面有困难 phpMyAdmin给了我一个错误:1093-您不能在FROM子句中为更新指定目标表'takes' DELETE FROM `takes` WHERE ID, course_ID IN (SELECT ID, course_ID FROM `takes` natural join `student` where name = 'J

从takes表中,我试图删除所有注册BIOL101的Jane

SELECT给了我一组正确的ID和课程ID,我只是想从takes表中删除它们。在理解正确的语法方面有困难

phpMyAdmin给了我一个错误:1093-您不能在FROM子句中为更新指定目标表'takes'

DELETE FROM `takes` WHERE ID, course_ID IN
(SELECT ID, course_ID FROM `takes` natural join `student`
where name = 'Jane' and course_ID='BIOL101')
考虑不要在中使用[ab],而是使用MySQL支持的适当的

DELETE
FROM `takes` 
WHERE `ID` IN 
(
    SELECT ID FROM `takes`
    NATURAL JOIN `student`
    WHERE `name` = 'Jane` AND `course_ID` = 'BOIL101'
)
另请参见。

何处ID,课程\u ID IN。。这看起来不对吗?无论如何,请参见、、和以获取删除。。连接语法-boo用于连接逻辑!
DELETE
FROM `takes` 
WHERE `ID` IN 
(
    SELECT ID FROM `takes`
    NATURAL JOIN `student`
    WHERE `name` = 'Jane` AND `course_ID` = 'BOIL101'
)
DELETE takes
FROM takes
JOIN student s
  -- The relation/schema is unclear; adapt as required
  -- but MAKE SURE A RELATION IS ESTABLISHED!
  ON s.student_id = takes.student_id
WHERE s.name = 'Jane'
  AND takes.course_ID = 'BIOL101'