Case sql _ pregunta

Tengo el siguiente CASE
(Case When @USR_CODIGO = '10' Then (Case When VTRMVH_SUCURS = '0017' Then 1 Else 0 End) Else (Case When @USR_CODIGO = '20' Then (Case When VTRMVH_SUCURS = '0016' Then 1 Else 0 End) End) End)
Le quiero agregar otro When con el @USR_CODIGO= '30' then (Case When VTRMVH_SUCURS= '00018')
No se bien el tema de las separaciones.
Agradecería su ayuda,
Saludos

1 Respuesta

Respuesta
1
El case lo puedes usar para definir varias sentencias de condicionantes: es decir
Esta es la manera sencilla de usarlo,
select case @USR_CODIGO
              When '10' then 1
              When '20' then 2
              when '30'  then 3 end
SELECT case @USR_CODIGO
when '10' then 1
when '20' then 2
when '30' then 3
else 0 end
ELSE es opcional, si ninguna de las condiciones se cumple regresa el valor por default, si no pones ELSE te regresa NULL.
Si necesitas evaluar mas cosas puedes usar la otra forma:
select case
when @USR_CODIGO = '10' and@OTRA_VARIABLE = 1 then 1
when @USR_CODIGO = '20' and @OTRA_VARIABLE = 1 then 2
when @USR_CODIGO = '30' and @OTRA_VARIABLE = 1 then 3 end
Y los puedes ir anidando como lo desees.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas