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

Encontrar registros duplicados

Estas en el tema de Encontrar registros duplicados en el foro de SQL Server en Foros del Web. hola, tengo una consulta, actualmente tengo una tabla que contiene "n" cantidad de registros con columnas de nombre completo, documento de identidad, fecha de nacimiento, ...
  #1 (permalink)  
Antiguo 19/02/2014, 10:44
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 9 meses
Puntos: 5
Encontrar registros duplicados

hola,

tengo una consulta, actualmente tengo una tabla que contiene "n" cantidad de registros con columnas de nombre completo, documento de identidad, fecha de nacimiento, etc. lo que deseo hacer es un cruce de esa base pero que me encuentre los datos que se duplican, es decir, que un usuario tenga el mismo nombre, pero diferentes documento de identidad o viceversa, estuve haciendo este query pero no me da resultados:
Código SQL:
Ver original
  1. SELECT a.*
  2. FROM temp_base_2 a INNER JOIN temp_base_2 b
  3. ON a.NOMBRE = b.NOMBRE AND a.NUMERO_DOC <> b.NUMERO_DOC
  4. ORDER BY 2

ante todo....es esto posible de realizar...???

gracias....
__________________
Lo que no se....tampoco creo saberlo....
  #2 (permalink)  
Antiguo 19/02/2014, 10:49
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Encontrar registros duplicados

de que es posible es posible puedes hacerlo con un row_count, o con un having pero te la dejo barata con un row_number

Código SQL:
Ver original
  1. SELECT * FROM(
  2. SELECT a.*,ROW_NUMBER() OVER(partition BY a.nombre ORDER BY a.nombre) AS rn
  3. FROM temp_base_2 a INNER JOIN temp_base_2 b
  4. ON a.NOMBRE = b.NOMBRE AND a.NUMERO_DOC <> b.NUMERO_DOC
  5. ) AS tabla WHERE rn>1
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 19/02/2014, 11:07
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 9 meses
Puntos: 5
Respuesta: Encontrar registros duplicados

que tal libras....

entiendo que el query que publicas te muestra la informacion que cumpla el Where (<1, =1), sin embargo, hay alguna manera para mostrar solo 2 registros (el registro normal y el duplicado) en el caso de que se dupliquen "n" cantidad de veces...??? o simplemente quito el where???
__________________
Lo que no se....tampoco creo saberlo....
  #4 (permalink)  
Antiguo 19/02/2014, 11:16
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Encontrar registros duplicados

Código SQL:
Ver original
  1. SELECT * FROM(
  2. SELECT a.*,ROW_NUMBER() OVER(partition BY a.nombre ORDER BY a.nombre) AS rn
  3. FROM temp_base_2 a INNER JOIN temp_base_2 b
  4. ON a.NOMBRE = b.NOMBRE AND a.NUMERO_DOC <> b.NUMERO_DOC
  5. ) AS tabla WHERE rn<=2

un poquito de logica.......
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 19/02/2014, 14:02
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 9 meses
Puntos: 5
Respuesta: Encontrar registros duplicados

obvie esa parte....gracias libras...!!!
__________________
Lo que no se....tampoco creo saberlo....

Etiquetas: duplicados, encontrar, fecha, registros, select, tabla
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 09:17.