It has been ages since I needed to write MySQL queries. I barely remember the basics.
I found myself perplexed after learning DELETE does not allow you to specify a limit. I thought it simply acted as a SELECT but the results instead of being returned where deleted.
It seems you need to nest 2 queries in order to fool MySQL. This seems overkill but it does the job.
DELETE FROM `my_table` WHERE id
IN (select id from
(select id FROM `my_table`
ORDER BY `my_field` DESC
LIMIT 20, 50)
x)
Code language: SQL (Structured Query Language) (sql)