Tue Nov 17
Research into keeping the latest x rows
You cant delete with a skip/take (some mysql limitation)
DELETE FROM `apiLogs` WHERE id <= ( SELECT id FROM ( SELECT id FROM `apiLogs` ORDER BY id DESC LIMIT 1 OFFSET 42 -- keep this many records ) foo )
Ended up going with a more generic version as rather than start from now we can just start at zero and delete up to the count we're looking for.
SELECT `id` FROM `apiLogs` WHERE `application_id` NOT in('SAGESYNC', 'SAGESYNCMS', 'SAGESYNCXC4') ORDER BY `created_at` ASC LIMIT 3500