Como suele pasar, se me olvido crear la llave primaria para una tabla, resultando que se insertaran registros duplicados en ella, ahora, ¿Cómo los elimino? Muy fácil, encontré, rascándole a google, una instrucción estándar para borrar registros duplicados:
1 2 3 4 5 | DELETE FROM tabla WHERE ROWID NOT IN (SELECT MIN(ROWID) FROM tabla GROUP BY columna1, columna2, columna3...); |
Donde por supuesto “tabla” es el nombre de la tabla y “columna1″, “columna2″, etc. Es la llave que identifica a cada registro.
excelente, funciona a la perfeccion. Gracias.
Hola, necesito ayuda sobre este tema, tango una tambla con tres campos A B C y necesito encontrar donde se duplican los tres por ejemplo encontrar las filas 1 y 3, que estan repetidas
A B C
——————–
123 cdsx a126d
124 ghff d188f
123 cdsx a126d
Gracias, aunque le hice este cambio MAX(ROWID) para conservar el registro más reciente.
Muchas gracias!
Es muy bueno encontrar personas que gustan compratir sus conocimientos!
graciasssssssssssssss me salvas la vida!!!
Excelente !!!
Más que perfecto..!
Mil gracias.
Perfecto.
Muchas gracias
Muchas Gracias, andaba en busca de algo asi
Gracias por el post, es una instrucción pequeña pero que me resuelve el trabajo grandemente, se te agradece.
Mas de chevere, esta sentencia gracias a todos por su ayuda a través de la web
GRACIAS!!! la verdad que me fue muy util!!!!
Saludos!
GRACIAS, ES MAS FACIL DE LO QUE PARECE….
BTA, COL
que bueno que te halla servido, para eso estamos, para ayudar, saludos
Muy buen dato, lo estaba necesitando
que bueno que te halla servido, saludos
me fue de mucha utilidad.
gracias
Muy bueno! llevaba tiempo buscando la forma más sencilla de buscar/eliminar duplicados!! gracias!
a mi tambien me sirvio! o era yo o era mi despido del trabajo jaja..
gracias!
que bueno que te sirviera, saludos
Que bien, tenía tiempo buscando un modo de seleccionar solo una fila de los registros duplicados. Había probado utilizando having count pero este te lista todas las filas. Este script es mucho mejor. Muchas gracias 😀
No se necesita el having count que propone Tales Klein, puesto que el “not in” excluye los registros no duplicados que se asimilan al mínimo.
segun yo asi funcionaba, voy a checar lo que dices para ver el detalle, gracias y saludos
faltó
having count(*) >1
con eso cotrolas que si hay datos duplicados y no duplicados no borre los últimos….