Operador condicional en SQL Cláusula Where
Desearía poder hacer algo como lo siguiente en SQl Server 2005 (que sé que no es válido) para mi cláusula where. A veces, @teamID (pasado a un procedimiento almacenado) será el valor de un teamID existente, de lo contrario siempre será cero y quiero todas las filas de la tabla Team.
Investigué usando Case y el operador debe aparecer antes o después de toda la declaración, lo que me impide tener un operador diferente en función del valor de @teamid. Cualquier sugerencia que no sea duplicar mis declaraciones selectas.
declare @teamid int
set @teamid = 0
Select Team.teamID From Team
case @teamid
when 0 then
WHERE Team.teamID > 0
else
WHERE Team.teamID = @teamid
end