Oracle - Borrar registros Duplicados

 
Vista:
Imágen de perfil de Jose

Borrar registros Duplicados

Publicado por Jose (3 intervenciones) el 15/07/2015 18:57:47
Buenos dias.. estoy optimizando una base de datos, dado que el programa que se usa para cargar información no tiene validación, hay muchos datos repetidos.

La estructura básica que me permitiria filtrar los valores repetidos los llamaremos

dueño (cedula del dueño)
carro (placa del carro)
sancion (un codigo de refecencia)

el resto de campos pues contienen datos complementarios..

necesito borrar los datos repetidos mismo dueño, mismo carro, misma sancion.,. dejando 1 solo

cabe aclarar que un mismo dueño puede tener mas de un carro y en cada carro tener mas de una sancion diferente...

como podria quedar la sentencia sql..

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 499
Oro
Ha mantenido su posición en Oracle (en relación al último mes)
Gráfica de Oracle

Borrar registros Duplicados

Publicado por Rafael (328 intervenciones) el 21/07/2015 10:50:24
Vaya comentas pocas cosas y las pocas cosas que comentas estan un bastante incongruentes...

Llamas una estructura basica a tres "CAMPOS"?? Son tablas??,

bueno como sea mi sugerencia por que dado que con lo que dices no veo por donde pillarlo...

Haces un SELECT de lo que sea que sea tu estructura basica, incluyendo la opcion DISTINCT, de tal modo que solo te quede un registro por cada combinacion que indicas. Y con ello lo INSERTAS en una tabla temporal, luego borras todo de la original y le insertas lo de la temporal.

Aqui hay otras consideraciones a tener en cuenta...

Los registros se duplican no solo por que tu programa no valida, si no tambien por que tu Base de Datos, carece de dichas validaciones.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Jose

Borrar registros Duplicados

Publicado por Jose (3 intervenciones) el 22/07/2015 06:12:54
Buenas Noches.. Gracias por tu respuesta

La tabla se llama "Sanción" tiene varios campos pero los relevantes son

IdCedula, Vehiculo, CodSancion

los demas son fecha, hora...

bueno como te comento yo no instale ni el motor Oracle ni el programa


entonces

Tabla = "Sancion"

Campos.. IdCedulam Vehiculo, CodSancion (los que se repiten)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 499
Oro
Ha mantenido su posición en Oracle (en relación al último mes)
Gráfica de Oracle

Borrar registros Duplicados

Publicado por Rafael (328 intervenciones) el 22/07/2015 10:23:30
Mira para obtener registros unicos....

1
2
SELECT DISTINCT IdCedula, Vehiculo, CodSancion
FROM SanciOn

Supongo que será sin acento...

Ahora bien para borrar y dejar solo uno .... es dificil la tabla tiene alguna llave primaria ???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Jose

Borrar registros Duplicados

Publicado por Jose (3 intervenciones) el 26/07/2015 19:19:08
Buenos dias... En principio debo decirles que no soy un expreto en Oracle...,,pero creo que no.. envio adjunto una imgen del resumen de la estructura

Creo que no... tiene indices.. pero llaves primarias no
MTS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar