Dotaz, jako je tento, zobrazí všechny záznamy, od nejnovějšího:
SELECT *
FROM MyTable
ORDER BY Date DESC -- or some autoincrementing ID column
S klauzulí OFFSET můžete přeskočit první záznamy. To znamená, že získáte všechny záznamy kromě prvních 100, tj. získáte ty záznamy, které by měly být smazány:
SELECT *
FROM MyTable
ORDER BY Date DESC
LIMIT -1 OFFSET 100
To pak můžete použít v dílčím dotazu ke skutečnému odstranění záznamů:
DELETE FROM MyTable
WHERE ID IN (SELECT ID
FROM MyTable
ORDER BY Date DESC
LIMIT -1 OFFSET 100)