This query gives me an error in MySQL 5.1.57, works in 5.1.53 though:
DELETE f
FROM table1 AS f
JOIN table2 AS dsy
JOIN table3 AS ds
JOIN table4 AS dp
JOIN table5 AS dg
WHERE
dsy.f1 = f.f1
AND ds.f2 = f.f2
AND dp.f3 = f.f3
AND dg.f4 = f.f4
AND dsy.school_year = 2011
AND ds.id = 29620
AND dp.id = 14120
AND dg.grade_level = 5;
The error is: Unknown table 'f' in MULTI DELETE
Thanks!
EDIT:
Actually this query works, the thing is I was using the schema name to declare my tables like schema.table1 (I removed it to post a more clear query here), with the schema name it breaks...
解决方案
Try this query -
DELETE f
FROM table1 AS f
JOIN table2 AS dsy
ON dsy.f1 = f.f1
JOIN table3 AS ds
ON ds.f2 = f.f2
JOIN table4 AS dp
ON dp.f3 = f.f3
JOIN table5 AS dg
ON dg.f4 = f.f4
WHERE
dsy.school_year = 2011 AND ds.id = 29620 AND dp.id = 14120 AND dg.grade_level = 5;