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

Eliminar registros duplicados

Estas en el tema de Eliminar registros duplicados en el foro de Bases de Datos General en Foros del Web. Hola buenas a todos, tengo una duda, Tengo un sistema en el que puedes registrar tu nombre, pero lo puedes seleccionar de una lista, y ...
  #1 (permalink)  
Antiguo 23/07/2010, 07:26
dbh
 
Fecha de Ingreso: diciembre-2007
Mensajes: 92
Antigüedad: 16 años, 4 meses
Puntos: 4
Pregunta Eliminar registros duplicados

Hola buenas a todos, tengo una duda,

Tengo un sistema en el que puedes registrar tu nombre, pero lo puedes seleccionar de una lista, y si no aparece, lo puedes registrar manualmente.

Por otra parte, utilizo instrucciones para que todos los nombres se guarden en mayusculas, y me gustaría saber, si existe alguna función o sentencia, que me permita elmininar directamente los nombres repetidos.

he visto que hay una variante:

select distinct * from,

si imprimo el resultado, no muestra los que se repiten, no existe algo que sea lo contrario? así podría seleccionar todos los iguales y eliminar todos, menos el primero,

de antemano, gracias.
  #2 (permalink)  
Antiguo 23/07/2010, 07:30
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 8 meses
Puntos: 150
Respuesta: Eliminar registros duplicados

Puedes probar con un:

Select campo,count(campo) as total from tabla group by campo having total>1

Ahi tienes los campos y las veces repetidas que sean mayor que 1. Luego ya sería cuestion de hacer un bucle recorriendo esos datos y pensando cual registro de los repetidos quieres 'dejar con vida'. Quizas seria util que pusieras mas informacion de la tabla, algunos registros de ejemplos y cuales quieres borrar y cuales no.
  #3 (permalink)  
Antiguo 23/07/2010, 09:19
dbh
 
Fecha de Ingreso: diciembre-2007
Mensajes: 92
Antigüedad: 16 años, 4 meses
Puntos: 4
Respuesta: Eliminar registros duplicados

Ok muchas gracias, voy a probarlo, te pongo un ejemplo con ciudades

Ciudad <select> NOMBRE DE CIDAD </select>
//El nombre lo recogo desde la base de datos
Otra <input type=text>


ciudad (campo)

Barcelona
Madrid
Valencia
Cancún
Londres
valencia
madrid


como verás, no quiero que se repitan nombres, no importa si el usuario introduce: MADRID o Madrid, utilizo la función para convertir las palabras a tipo Titulo para mostrarlo en el select

Si quiero controlarlo desde el <input type text>

mas o menos como tendría que ser mi if()

gracias

Etiquetas: duplicados, eliminar, registros
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 20:51.