Tengo un procedimiento almacenado en SQL Server 2000 que realiza una búsqueda basada en los valores de los parámetros. Para uno de los parámetros pasados en, necesito una cláusula diferente WHERE
dependiendo de su valor - el problema es que los 3 valores serían donde MyColumn
DONDE ESTÁ NULA, NO ES NULA o NO WHERE cláusula según el valor del parámetro SQL Server
IS NULL
IS NOT NULL
ANY VALUE (NULL AND NOT NULL)
(esencialmente noWHERE
cláusula)
Estoy teniendo un bloqueo mental para encontrar la sintaxis correcta. ¿Es posible hacerlo en una declaración seleccionada sin realizar alguna ramificación IF @parameter BEGIN ... END
?
Tuviste la misma idea que yo. Sin embargo, necesitas los paréntesis. – BobbyShaftoe
Gracias Bobby, actualicé mi respuesta –
No estoy seguro de si necesita o no * los paréntesis, pero soy un gran defensor de paréntesis en expresiones booleanas complejas. No tenerlos le deja al compilador hacer un orden de operaciones y es bastante aterrador, si me preguntas. –