Tengo un script que se ejecuta cada hora en mi sitio php. En ese script, me gustaría que algún tipo de consulta MySQL borre todos los registros de una tabla, pero diga los últimos 50.MySQL BORRAR todos menos los últimos registros X
¿Cómo haré algo así?
// pseudo code: like this?
DELETE from chat WHERE id = max (ID - 50)
¿Puede agregar un campo de marca de tiempo a su tabla? –
Si su columna de ID es una columna de identidad con autoincremento de 1, podría hacer algo como eso: 'ELIMINAR DE chat DONDE NO ESTÁ LA IDENTIFICACIÓN (SELECCIONAR IDENTIFICACIÓN DE TOP 50 DESDE chat ORDER BY ID DESC)' – pistipanko
Tengo un campo datetime – user1022585