sql >> Base de Datos >  >> RDS >> Mysql

MySQL omitiendo filas que un usuario ya ha visto al verificar una tabla vista

Debe mover la restricción en uuid_user desde el WHERE cláusula al ON cláusula de la unión:

SELECT * 
FROM maintable m 
LEFT JOIN seentable s 
    ON m.uuid = s.uuid AND s.uuid_user = '[user]'
WHERE s.uuid IS NULL;

Lo anterior es la lógica que desea aquí. Ahora, se produce una unión exitosa entre los registros de las dos tablas cada vez que uuid los valores coinciden con y cuando el uuid_user el valor de la tabla vista coincide con algún valor. Tenga en cuenta que el uuid_user valor no coincidencia para cualquier registro, no se filtrará, que es lo que sucederá con su consulta actual.