Записи / текст не в предложении SQL 'IN' - PullRequest
0 голосов
/ 10 мая 2018

Что лучше всего вернуть набор (массив?) Строк, которые не найдены предложением 'IN'.Например,

, давайте предположим, что таблица FRUIT содержит только 'APPLE', 'PEACHES', 'KIWI' и 'BANANA'.Приведенный ниже запрос вернет «APPLE» И «BANANA»

SELECT FRUIT_NAME 
FROM FRUIT 
WHERE FRUIT_NAME IN ('APPLE', 'BANANA', 'ORANGE', 'PEAR')

Как мне вернуть «ORANGE» и «PEAR», то есть элементы, которых нет в таблице, но которые являются частью моего поискакритерии?

1 Ответ

0 голосов
/ 10 мая 2018

Общий способ - сделать left join

select t.*
from (select 'APPLE' as fruits union all
      select 'BANANA' union all
      select 'ORANGE' union all
      select 'PEAR') t left join FRUIT f
                     on t.fruits = f.fruits 
where t.fruits is null;
...