sql >> Databasteknik >  >> RDS >> Mysql

MySQL välj rader där left join är null

Du kan använda följande fråga:

SELECT  table1.id 
FROM    table1 
        LEFT JOIN table2 
            ON table1.id IN (table2.user_one, table2.user_two)
WHERE   table2.user_one IS NULL;

Fast, beroende på dina index på table2 du kanske upptäcker att två kopplingar fungerar bättre:

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;


  1. LibreOffice:'com.mysql.jdbc.driver' kan inte laddas

  2. MySQL-fråga för att räkna icke-nullvärden på en enda rad

  3. PostgreSQL-motsvarighet för MySQL GROUP BY

  4. Hur kan jag få fram antalet poster som påverkas av en lagrad procedur?