У меня проблема mysql. Скажем, например, у меня есть две таблицы со следующими значениями:
apple, orange, banana, kiwi, jackfruit, mango, strawberry
apple, orange, banana, jackfruit
. Мой вопрос: как я могу сделать запрос, который будет выбирать или отображать значения:
kiwi, mango, strawberry
Может ли кто-нибудь предоставить образец кода для этого?
select column from table1 where column not in (select column from table2)
Опция 1
SELECT table1.fruit FROM table1 LEFT JOIN table2 ON table1.fruit = table2.fruit WHERE table2.fruit IS NULL
Вариант №2
SELECT table1.fruit FROM table1 WHERE NOT EXISTS ( SELECT 1 FROM table2 WHERE table2.fruit = table1.fruit )
Я должен увидеть, что планы объяснений напоминают, что является более эффективным, но это действительно зависит от любых индексов, которые вы создали.