Quero comparar dois conjuntos de valores e ver se há interseções. O primeiro conjunto de valores é especificado em tempo de execução e o segundo conjunto de valores é armazenado em uma linha de um banco de dados.
Aqui estão alguns códigos de exemplo:
CREATE TABLE #tab1 (var1 INT, var2 INT , var3 INT)
INSERT INTO #tab1
VALUES (1,2,3),(0,0,0),(0,4,0)
Select
a = (case when 1 IN (var1,var2,var3) OR
2 IN (var1,var2,var3) OR
3 IN (var1,var2,var3)
THEN 1 else 0 end)
from #tab1
Eu sinto que o código é muito complicado e estou querendo saber se há alguma maneira simples de fazê-lo. Obrigado!