Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Zeigt Werte an, die sich in Tabelle2, aber NICHT in Tabelle1 befinden

Option 1

SELECT table1.fruit FROM table1
LEFT JOIN table2
    ON table1.fruit = table2.fruit
WHERE table2.fruit IS NULL

Möglichkeit #2

SELECT table1.fruit FROM table1
WHERE NOT EXISTS (
    SELECT 1 FROM table2
    WHERE table2.fruit = table1.fruit
)

Ich müsste die Erklärungspläne sehen, um mich daran zu erinnern, was effizienter ist, aber es hängt wirklich von den Indizes ab, die Sie erstellt haben.