Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL seleciona linhas onde a junção esquerda é nula


Você pode usar a seguinte consulta:
SELECT  table1.id 
FROM    table1 
        LEFT JOIN table2 
            ON table1.id IN (table2.user_one, table2.user_two)
WHERE   table2.user_one IS NULL;

Embora, dependendo de seus índices em table2 você pode descobrir que duas junções têm um desempenho melhor:
SELECT  table1.id 
FROM    table1 
        LEFT JOIN table2 AS t1
            ON table1.id = t1.user_one
        LEFT JOIN table2 AS t2
            ON table1.id = t2.user_two
WHERE   t1.user_one IS NULL
AND     t2.user_two IS NULL;