我需要一个 MySQL 语句来从我的表中删除最旧的 10 个条目,但是我能得到的最接近的是:
DECLARE ID INT;
SET ID = (SELECT CallbackID FROM callbacks ORDER BY CallbackID LIMIT 1 OFFSET 9);
DELETE FROM callbacks WHERE callbackID <= ID;
如果总是至少有 10 个条目,这很好,但当条目较少时,ID 未设置,因此删除语句失败。
有任何想法吗?谢谢
编辑:也试过这个:
DECLARE ID INT;
SET ID = (SELECT CallbackID FROM callbacks ORDER BY CallbackID LIMIT 1 OFFSET 9);
if ID IS NOT NULL THEN
DELETE FROM callbacks WHERE callbackID <= ID;
END IF;