Reputation: 137
Tried thus query with "SELECT *" instead of "DELETE FROM" and it worked perfectly.
DELETE FROM `80dage_garmin_track` t1 WHERE EXISTS (
SELECT 1
FROM `80dage_garmin_track` t2
WHERE t1.Length = t2.Length
AND t1.Time = t2.Time
AND t1.idgarmin_track > t2.idgarmin_track
)
MySQL Error: .#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 't1 WHERE EXISTS (SELECT 1 from 80dage_garmin_track` t2 WHERE t1.Le' at line 1
Upvotes: 3
Views: 121
Reputation: 262534
MySQL does not allow all kinds of sub selects in the WHERE clause of DELETE, see this thread. Yours may (or may not) be fine, if you drop the table alias (t1), which is also not allowed for DELETE.
Upvotes: 3