MySQL - Mysql-encontrar diferencias entre 2 tablas.

 
Vista:
sin imagen de perfil

Mysql-encontrar diferencias entre 2 tablas.

Publicado por Favio (1 intervención) el 02/07/2014 05:00:00
Buen día:

Tengo dos tablas con los mismos campos (NoA,funcion, atributo) una la obtuve con información de la semana pasada y otra de hoy, quiero encontrar los datos que fueron cambiados entre una tabla y otra .

Ejd.

Tabla past
NoA,funcion,atributo.
523121596475 RegisteredIC ReAnswer_TO
523121596475 RegisteredIC Forward_All_Calls
523121596475 RegisteredIC Forward_on_No_Answer

Tabla ahora
523121596475 RegisteredIC ReAnswer
523121596475 RegisteredIC Forward_All_Calls
523121596475 RegisteredIC Forward_on_No_Answer


Resultado esperado
523121596475 RegisteredIC ReAnswer

He intentado algo así

SELECT * FROM ahora WHERE ahora.`NoA` IN (SELECT NoA FROM past WHERE past.`NoA`=ahora.`NoA` AND past.`atributo`<>ahora.`atributo`)

pero no funciona me da como resultado toda la tabla completa "ahora".

Me pueden ayudar como tendria que hacer el query en mysql.

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
Imágen de perfil de xve
Val: 796
Oro
Ha mantenido su posición en MySQL (en relación al último mes)
Gráfica de MySQL

Mysql-encontrar diferencias entre 2 tablas.

Publicado por xve (1151 intervenciones) el 02/07/2014 07:57:52
Hola Favio, una manera, podría ser algo así:

1
2
3
SELECT *
FROM past p LEFT JOIN ahora a ON p.atributo=a.atributo
WHERE a.atributo IS NULL

Lo que intento hacer, es que vincule las dos tablas por el campo que puede varias, y te devuelva únicamente el que es null, que quiere decir que no esta vinculado.

Puedes probarlo y comentarnos?
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