Saltar al contenido

Comparar dos tablas en mysql

Si encuentras algún detalle que no entiendes puedes dejarlo en los comentarios y te ayudaremos lo más rápido posible.

Solución:

Prueba esto:

SELECT table1.*
FROM table1
LEFT OUTER JOIN table2
ON table1.id = table2.id
WHERE table2.id IS NULL

LEFT OUTER JOIN vincular dos tablas comenzando por table1, si table2 no tiene una fila vinculada, todos los campos de table2 serán null. Entonces, si pones tu WHERE condición table2.id es nullobtienes solo filas en la tabla 1 que no existen en la tabla 2

Puede resolver esto haciendo una combinación externa izquierda y verificando todas las filas que no existen. Intente lo siguiente dependiendo de si desea encontrar valores que no existen de la tabla 1 en la tabla 2 o de la tabla 2 en la tabla 1.

SELECT *
FROM table1
LEFT OUTER JOIN table2 ON (table1.id = table2.id)
WHERE table2.id IS NULL;


SELECT *
FROM table2
LEFT OUTER JOIN table1 ON (table1.id = table2.id)
WHERE table2.id IS NULL;

Violín SQL: http://sqlfiddle.com/#!2/a9390/8

No se te olvide compartir esta noticia si te valió la pena.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *