DELETE
hỗ trợ ORDER BY
và LIMIT
mệnh đề, vì vậy nó là có thể. Tuy nhiên, do DELETE
các giới hạn tham chiếu và tham số của LIMIT
bạn cần hai truy vấn.
SELECT COUNT(*) AS total FROM table WHERE roomid = 1;
-- run only if count is > 3
DELETE FROM table WHERE roomid = 1 LIMIT total - 3;
Xin lưu ý rằng điều này có thể sẽ yêu cầu một công nghệ trung gian. Tôi đã hiển thị các truy vấn để tham khảo.