problemas con left join
Publicado por lowrider (1 intervención) el 11/01/2012 14:13:00
Estimados, tengo un problema que me urge, por si alguien puede dar una mano.
necesito hacer una query que compare y rescate datos de dos tablas:
tabla 1 con datos oficiales, pero faltan campos.
tabla 2 datos errados + datos semi correctos, pero contiene los datos faltantes de tabla1.
no existe un digito unico (id) por registro, por lo que busco la mejor aproccimación entre 4 campos.
lo que debe hacer la query es dejar a la izquierda exactamente los registros y campos de la tabla 1; y adicionar en campos adicionales aquellos en que las cuatro coincidencias sean verdaderas, y donde la coincidencia sea falsa, dejar null.
Ambas tablas tienen mismo nombre de campos y número de campos, con formato igual.
Estaba trabajando, entre otras, con:
select *
from tabla1 a left join tabla2 b -- la tabla 1 es la buena y contiene los datos importantes
on a.c1=b.c1 and
a.c2=b.c2 and
a.c3=b.c3 and
a.c4=b.c4
esta opción me entrega registros de más, como 3000 registros de más de un total de 380000 tabla 1 y 590000 tabla2.
Favor su ayuda.
necesito hacer una query que compare y rescate datos de dos tablas:
tabla 1 con datos oficiales, pero faltan campos.
tabla 2 datos errados + datos semi correctos, pero contiene los datos faltantes de tabla1.
no existe un digito unico (id) por registro, por lo que busco la mejor aproccimación entre 4 campos.
lo que debe hacer la query es dejar a la izquierda exactamente los registros y campos de la tabla 1; y adicionar en campos adicionales aquellos en que las cuatro coincidencias sean verdaderas, y donde la coincidencia sea falsa, dejar null.
Ambas tablas tienen mismo nombre de campos y número de campos, con formato igual.
Estaba trabajando, entre otras, con:
select *
from tabla1 a left join tabla2 b -- la tabla 1 es la buena y contiene los datos importantes
on a.c1=b.c1 and
a.c2=b.c2 and
a.c3=b.c3 and
a.c4=b.c4
esta opción me entrega registros de más, como 3000 registros de más de un total de 380000 tabla 1 y 590000 tabla2.
Favor su ayuda.
Valora esta pregunta
0