datos duplicados

15/10/2008 - 22:08 por Luis Mata | Informe spam
Hola

tengo 2 tablas en una de ellas falta algunos registros de la otra tabla,
existe alguna forma de select que solo me pueda dar la diferencia de
registros de ambas tablas, osea los que estan duplicados no mostrarlos solo
los unicos.

el campo a diferenciar es codigo_articulo

Luis

Preguntas similare

Leer las respuestas

#1 Carlos M. Calvelo
15/10/2008 - 22:22 | Informe spam
Hola Luis,

"Luis Mata" wrote:
Hola

tengo 2 tablas en una de ellas falta algunos registros de la otra tabla,
existe alguna forma de select que solo me pueda dar la diferencia de
registros de ambas tablas, osea los que estan duplicados no mostrarlos solo
los unicos.

el campo a diferenciar es codigo_articulo




Algo así:

select *
from tabla1
where codigo_articulo not in (select codigo_articulo from tabla2)

Saludos,
Carlos
Respuesta Responder a este mensaje
#2 Luis Mata
15/10/2008 - 22:55 | Informe spam
no me parece que esto es igual al distinct, lo que quiero es eliminar todos
los dobles osea los 2 y dejar solo los que no tienen pareja .

Luis


"Carlos M. Calvelo" escribió en
el mensaje de noticias
news:
Hola Luis,

"Luis Mata" wrote:
Hola

tengo 2 tablas en una de ellas falta algunos registros de la otra tabla,
existe alguna forma de select que solo me pueda dar la diferencia de
registros de ambas tablas, osea los que estan duplicados no mostrarlos
solo
los unicos.

el campo a diferenciar es codigo_articulo




Algo así:

select *
from tabla1
where codigo_articulo not in (select codigo_articulo from tabla2)

Saludos,
Carlos

Respuesta Responder a este mensaje
#3 Juan Diego Bueno
15/10/2008 - 23:50 | Informe spam
Hola Luis:

"Luis Mata" escribió en el mensaje de
noticias:OHk#
no me parece que esto es igual al distinct, lo que quiero es eliminar
todos los dobles osea los 2 y dejar solo los que no tienen pareja .



Lo que hace la query que te ha puesto Carlos es darte los registros que
están en tabla 1 pero no están en tabla 2, es decir, aquellos que no estén
en las dos tablas a la vez. Como el select lo haces sobre la tabla1, aunque
haya registros en la tabla 2 que no estén en la 1, esos supongo que no te
interesan, y la query va a eliminar los de la tabla 1 que están en la 2.

Pero si no es eso, y lo que quieres es tomar los de las dos tablas que no
estén repetidos en ambas, podría ser algo como esto:

select * from tabla1 where codigo_articulo not in (select codigo_articulo
from tabla2)
union all
select * from tabla2 where codigo_articulo not in (select codigo_articulo
from tabla1)

Y si no es así, explícate con un pequeño ejemplo, a ver si te entendemos

Un saludo
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida