sql >> Database teknologi >  >> RDS >> Mysql

Vis værdier, der er i tabel2, men IKKE i tabel1

Mulighed #1

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

Mulighed #2

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

Jeg er nødt til at se de forklarende planer for at huske, hvad der er mere effektivt, men det afhænger virkelig af eventuelle indekser, du har oprettet.



  1. SQL:Sammenslutning af to tabeller, som ikke har fuld kolonnematch

  2. Intelligent MySQL GROUP BY til aktivitetsstreams

  3. hvordan man viser indholdet nøjagtigt som det er gemt i mysql

  4. Få et Mysql-resultat uden at kende et kolonnenavn