Я пытаюсь выяснить, как исключить элементы из оператора select из таблицы A, используя список исключений из таблицы B. Уловка заключается в том, что я исключаю, основываясь на префиксе поля.
Таким образом, значение поля может быть "FORD Muffler", и чтобы исключить его из основного запроса, я бы сделал:
SELECT FieldName
FROM TableName
WHERE UPPER(ColumnName) NOT LIKE 'FORD%'
Но чтобы использовать список значений для исключения из другой таблицы, я бы использовал такой подзапрос, как:
SELECT FieldName
FROM TableName
WHERE UPPER(ColumnName) NOT IN (Select FieldName2 FROM TableName2)
Проблема в том, что исключаются только точные совпадения, а не LIKE или Wildcards (%).
Как я могу выполнить эту задачу? Редизайн таблицы не вариант, так как используется существующая таблица.
РЕДАКТИРОВАТЬ: Извините, я использую SQL Server (2005).