Una de las tareas típicas de nuestro día a día es eliminar registros duplicados de algunas tablas, no vamos a entrar en detalle de que produce estos errores, jejej, pero vamos a ir planteando algunas soluciones para borrar los registros y quedarnos con un único registro.
Hoy vamos a presentar una solución:
DELETE
FROM tabla a
WHERE ROWID > (SELECT MIN(ROWID)
FROM tabla b
WHERE b.campo_id=a.campo_id);
De esta forma con ROWID tenemos una cadena alfanumérica que identifica de forma única cada fila, y estamos diciéndole que borre todos los registros con ROWID mayor que el menor, de esta forma solo nos quedamos con este registro que tiene el menor ROWID .
Vamos a ir añadiendo otras posibles soluciones próximamente.
No hay comentarios :
Publicar un comentario