Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

borrar registros duplicados

Estas en el tema de borrar registros duplicados en el foro de Mysql en Foros del Web. accidentalmente importe una misma tabla, ahora tengo algunos registros duplicados. las ids numericas se repiten igual que todos los campos. id nombre 1 juan... 1 ...
  #1 (permalink)  
Antiguo 26/04/2009, 11:58
 
Fecha de Ingreso: enero-2006
Mensajes: 199
Antigüedad: 18 años, 10 meses
Puntos: 5
borrar registros duplicados

accidentalmente importe una misma tabla, ahora tengo algunos registros duplicados.

las ids numericas se repiten igual que todos los campos.

id nombre
1 juan...
1 juan...
2 jose...
2 jose...
3 david...
3 david...
...

como puedo borrar el registro duplicado?
  #2 (permalink)  
Antiguo 26/04/2009, 13:08
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: borrar registros duplicados

Puedes mandar el resultado agrupado a una nueva tabla. Posteriormente borrar los datos de la tabla y actualizar nuevamente la tabla en cuestión.

1. Crear tabla con consulta agrupada.

Código sql:
Ver original
  1. CREATE TABLE temporal AS SELECT id,nombre FROM tabla GROUP BY id;
2. Borrar todos los datos de la tabla original.

Código sql:
Ver original
  1. DELETE FROM tabla;

3. Restablecer datos a tabla.

Código sql:
Ver original
  1. INSERT INTO tabla SELECT *FROM temporal;

4. Puedes borrar tabla temporal.

Código sql:
Ver original
  1. DROP TABLE temporal;

Con este tipo de cambios, recuerda hacer uso de transacciones. No vayas a embarrarla en un error y pierdas toda tu información.

Un saludo.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 28/04/2009, 10:12
Avatar de xcars  
Fecha de Ingreso: mayo-2005
Ubicación: El Salvador
Mensajes: 753
Antigüedad: 19 años, 6 meses
Puntos: 4
Respuesta: borrar registros duplicados

identifica primero cuales son tus registros duplicados

select id_campo from tabla group by id_campo having count(id_campo)>1

luego por cualquier otro metodo eliminas uno de los registros y listo.
__________________
Con Microaplicaciones puedes hacer tu tienda en línea de forma sencilla y rápida, sin costos ocultos y con mucha responsabilidad.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:57.