Intenté buscar pero no pude encontrar nada que me ayudara.SQL Switch/Case in where clause
estoy tratando de hacer esto en SQL:
declare @locationType varchar(50);
declare @locationID int;
SELECT column1, column2
FROM viewWhatever
WHERE
CASE @locationType
WHEN 'location' THEN account_location = @locationID
WHEN 'area' THEN xxx_location_area = @locationID
WHEN 'division' THEN xxx_location_division = @locationID
sé que no debería tener que poner '= @locationID' al final de cada uno, pero no puedo obtener la sintaxis incluso cerca de ser correcto. SQL sigue quejándose de mi '=' en la primera línea WHEN ...
Help!
Como TomH señaló en el comentario a su respuesta a continuación, usted formó el SQL de forma incorrecta. Probé el mío en SQLServer 2005 y funcionó bien. –
¿Por qué se necesita @? ¿Qué hacen? – JedatKinports