Eu tenho que gerar uma saída de consulta para registros não correspondentes.
Supondo que eu tenha duas tabelas Table1 e Table2. Ambas as tabelas têm as colunas como DrugName. Nenhuma coluna de ID. Apenas a coluna de valor.
Eu tenho que gerar uma saída da Tabela1 filtrando DrugNames que estão na Tabela2. Supondo que a Tabela1 tenha 1.000 registros e a Tabela2 tenha 100 registros. Ao aplicar o filtro, devo obter 900 registros da Tabela1.
select * from Table1
left join Table2 on
Table1.DrugName = Table2.DrugName
where Table2.DrugName is null
A sintaxe acima retorna registros não correspondentes.
Digamos que em Table2.DrugName será "ABCD" enquanto em Table1.DrugName será "XYZ ABCD" ou "ABCD GHIJ". Se Table1.DrugName tiver a palavra correspondente "%ABCD%", tenho que filtrar.
...mas tenha em mente que o desempenho pode ser péssimo. Talvez seja melhor dividir os nomes mais longos em partes e, em seguida, unir na tabela DrugNameElements. Dessa forma, você pode indexar os elementos e identificar rapidamente os correspondentes.