switch en T-SQL

17/12/2007 - 22:00 por Carlos Hidalgo | Informe spam
Hola

En mi DB tengo un SP donde de acuerdo al valor de una variable, decide que
consulta ejecutar, pero actualmente lo hago con puro IF-ELSE y la verdad es
algo engorroso, quisiera saber si existe algo como el SWITCH para hacer
selecciones multiples o me lo tengo que aventar con ELSEIF

desde ya mucha gracias...

Preguntas similare

Leer las respuestas

#6 Gux (MVP)
18/12/2007 - 16:07 | Informe spam
Atención que el CASE no es un switch. CASE solamente puede ser usada como una
función en una senetcnia pero no es una instrucción de control de flujo de
ejecución, que es lo que el amigo necesita.

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/profile/gux
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Pepe" wrote:

Puedes utilizar un CASE, buscala en los BOL

Sintaxis
Función CASE sencilla:

CASE input_expression
WHEN when_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
]
END

Función CASE de búsqueda:

CASE
WHEN Boolean_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
]
END





"Carlos Hidalgo" escribió en el mensaje
news:
> Hola
>
> En mi DB tengo un SP donde de acuerdo al valor de una variable, decide que
> consulta ejecutar, pero actualmente lo hago con puro IF-ELSE y la verdad
> es algo engorroso, quisiera saber si existe algo como el SWITCH para hacer
> selecciones multiples o me lo tengo que aventar con ELSEIF
>
> desde ya mucha gracias...



Respuesta Responder a este mensaje
#7 Gux (MVP)
18/12/2007 - 16:08 | Informe spam
Maxi, cómo es eso de que T-SQL no es un lenguaje de programación?
Qué estás fumando hoy? :-)

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/profile/gux
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Maxi Accotto" wrote:

Hola, Tsql no es un lenguaje de programacion, lo que usted dispone como IF
es la unica opcion para lo que esta buscando


Microsoft MVP SQLServer
www.sqltotalconsulting.com
-

"Carlos Hidalgo" escribió en el mensaje de
noticias:
> Hola
>
> En mi DB tengo un SP donde de acuerdo al valor de una variable, decide que
> consulta ejecutar, pero actualmente lo hago con puro IF-ELSE y la verdad
> es algo engorroso, quisiera saber si existe algo como el SWITCH para hacer
> selecciones multiples o me lo tengo que aventar con ELSEIF
>
> desde ya mucha gracias...


Respuesta Responder a este mensaje
#8 Carlos M. Calvelo
18/12/2007 - 16:40 | Informe spam
Hola Gustavo, Hola Maxi,

On 18 dec, 16:08, Gux (MVP) wrote:
Maxi, cómo es eso de que T-SQL no es un lenguaje de programación?
Qué estás fumando hoy? :-)




Ah! Por fin!
Ya me estaba tardando un poco que alguien reaccionase a eso. :-)

Saludos,
Carlos
Respuesta Responder a este mensaje
#9 Maxi
18/12/2007 - 17:28 | Informe spam
Bueno no entra en la categoria de lenguaje de programacion para mi ;-) es
mas un scripting que otra cosa :-) pero bueno, lo que realmente queria decir
es que no tiene el poder de un lenguaje de programacion como c# o vb.net o
java por ejemplo, le faltan cosas muy basicas, de hecho en 2005 se incorporo
la utilizacion de CLR y es para darle mas poder a TSQL (las cosas que no se
pueden hacer con este "lenguaje"


-
Microsoft M.V.P en SQLServer
SQLTotal Consulting - Servicios en SQLServer
Email:
"Gux (MVP)" escribió en el mensaje
news:
Maxi, cómo es eso de que T-SQL no es un lenguaje de programación?
Qué estás fumando hoy? :-)

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/profile/gux
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Maxi Accotto" wrote:

Hola, Tsql no es un lenguaje de programacion, lo que usted dispone como
IF
es la unica opcion para lo que esta buscando


Microsoft MVP SQLServer
www.sqltotalconsulting.com
-

"Carlos Hidalgo" escribió en el mensaje de
noticias:
> Hola
>
> En mi DB tengo un SP donde de acuerdo al valor de una variable, decide
> que
> consulta ejecutar, pero actualmente lo hago con puro IF-ELSE y la
> verdad
> es algo engorroso, quisiera saber si existe algo como el SWITCH para
> hacer
> selecciones multiples o me lo tengo que aventar con ELSEIF
>
> desde ya mucha gracias...


Respuesta Responder a este mensaje
#10 Carlos M. Calvelo
18/12/2007 - 18:40 | Informe spam
Hola Maxi,

On 18 dec, 17:28, "Maxi" wrote:
Bueno no entra en la categoria de lenguaje de programacion para mi ;-) es
mas un scripting que otra cosa :-)



Por ser o no 'scripting' no se es menos o mas lenguaje de
programación.


pero bueno, lo que realmente queria decir
es que no tiene el poder de un lenguaje de programacion como c# o vb.net o
java por ejemplo, le faltan cosas muy basicas, de hecho en 2005 se incorporo
la utilizacion de CLR y es para darle mas poder a TSQL (las cosas que no se
pueden hacer con este "lenguaje"



Como que el CLR tampoco tiene el poder de SQL y también le faltan
cosas muy básicas cuando hablamos de programación declarativa y
de gestión de datos que en SQL son normales.
Y.. si, SQL (sin la 'T') es un lenguaje de programación.
Quizás estés diciendo que no consideras lenguanges de programación
aquellos de propósito específico (no general). Pero si lo son.

Saludos,
Carlos
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida