Declaración de un caso Sql dentro de Sql IN
tengo unsql
declaración que tiene una condición donde como abajo
WHERE (TABLE1.Field=@Id OR (@Id=0))
Esto funciona bien cuando@Id
los valores son cero o más
Ahora necesito hacer coincidir varios valores cuando @Id se convierta en 0.
Intenté algo como abajo que no funciona. Sé que puedo usarIF-ELSE
aquí, pero me pregunto si esto se puede lograr utilizandocase
estación
WHERE TABLE1.Field IN (CASE WHEN @Id>0 THEN @Id ELSE (6,16,18) END)