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

borrar registros repetidos dejando solo uno

Estas en el tema de borrar registros repetidos dejando solo uno en el foro de Mysql en Foros del Web. No consigor crear esta consulta que posteo en el titulo, osea si tengo registros repetidos solo quiero dejar uno, partiendo que tengo algos asin: empreados ...
  #1 (permalink)  
Antiguo 29/09/2012, 06:25
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
borrar registros repetidos dejando solo uno

No consigor crear esta consulta que posteo en el titulo, osea si tengo registros repetidos solo quiero dejar uno, partiendo que tengo algos asin:

empreados

id
1
2
3
4
5
6

nombre

andres
ana
antonio
luis
andres
andres

cargo
administracion
contable
comercial
taller
administracion
administracion


osea que partiendo que de tengo en la empreados los campos nombre y cargo, y lo que quiero eliminar los registros que se repitan en este caso seria eliminar el registro andres que se repite 3 veces y solo tendria que verse una vez, alguna idea de como hacer esta consulta, deberia quedar asin:
id

2
3
4
6

nombre


ana
antonio
luis
andres

cargo

contable
comercial
taller
administracion


saludos.

Última edición por azaz; 29/09/2012 a las 06:41
  #2 (permalink)  
Antiguo 29/09/2012, 06:48
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: borrar registros repetidos dejando solo uno

Suponiendo que el último registro es el valido:
Código MySQL:
Ver original
  1. SELECT MAX(id) id, nombre, cargo
  2. FROM empleados
  3. GROUP BY nombre
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 29/09/2012, 06:54
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: borrar registros repetidos dejando solo uno

Hola gnzsoloyo, en realidad da igual si el ultimo o el primer registro es el valido ya que serian iguales, segun entiendo la consulta que me posteastes lo que hace es selecionar el id mas alto donde se repitan n en el campo nombre vale pero para eliminarlo no lo puedo hacer todo en la misma consulta, saludos.
  #4 (permalink)  
Antiguo 29/09/2012, 07:51
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: borrar registros repetidos dejando solo uno

Encontre esto en el foro:

1) create table nueva as select * from vieja group by camponorep
2) delete from vieja
3) insert into vieja select * from nueva
4) drop table nueva

pero mi pregunta es si esto mismo se puede hacer con una misma consulta?

Saludos.
  #5 (permalink)  
Antiguo 29/09/2012, 08:09
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: borrar registros repetidos dejando solo uno

Cita:
pero mi pregunta es si esto mismo se puede hacer con una misma consulta?
No. Y es bastante obvia la respuesta si te fijas que tu mismo estás mostrando el menor algoritmo, en cual implica cuatro pasos...
No hay otra.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 29/09/2012, 09:30
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: borrar registros repetidos dejando solo uno

Gracias por tu aclaracion gnzsoloyo, saludos.

Etiquetas: registros, repetidos, campos
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 10:21.