CASE y cadenas

17/04/2008 - 13:21 por Alhambra Eidos Kiquenet | Informe spam
Hola a todos,

tengo esta consulta

SELECT
, D.desp_LugarInicio, D.desp_LugarFin, D.desp_SegundoLugarFin
From tabla D

Son tres campos VARCHAR(300)

Quiero obtener otro campo que sea el primer campo que no comience con la
cadena ALHAMBRA (sería el patrón ALHAMBRA%)

Es decir,
Si desp_LugarInicio comienza por ALHAMBRA

Si desp_LugarFin comienza por ALHAMBRA
tomo valor desp_SegundoValorFin
Sino tomo valor desp_LugarFin

Sino tomo valor desp_LugarInicio

he puesto un CASE así:
,(CASE D.desp_LugarInicio WHEN 'ALHAMBRA%' THEN D.desp_LugarFin ELSE
D.desp_LugarInicio END)

Pero no me ha funcionado, cómo podría hacerlo ?

Muchas gracias de antemano.

http://www.alhambra-eidos.es/web2005/index.html
www.kiquenet.net
http://www.setbb.com/putainformatic...opic.php?p„3
www.trabajobasura.com/solusoft
 

Leer las respuestas

#1 Eduardo
17/04/2008 - 13:43 | Informe spam
Quizas te convenga usar la funcion PatIndex()



"Alhambra Eidos Kiquenet"
escribió en el mensaje
news:
Hola a todos,

tengo esta consulta

SELECT
, D.desp_LugarInicio, D.desp_LugarFin, D.desp_SegundoLugarFin
From tabla D

Son tres campos VARCHAR(300)

Quiero obtener otro campo que sea el primer campo que no comience con la
cadena ALHAMBRA (sería el patrón ALHAMBRA%)

Es decir,
Si desp_LugarInicio comienza por ALHAMBRA

Si desp_LugarFin comienza por ALHAMBRA
tomo valor desp_SegundoValorFin
Sino tomo valor desp_LugarFin

Sino tomo valor desp_LugarInicio

he puesto un CASE así:
,(CASE D.desp_LugarInicio WHEN 'ALHAMBRA%' THEN D.desp_LugarFin ELSE
D.desp_LugarInicio END)

Pero no me ha funcionado, cómo podría hacerlo ?

Muchas gracias de antemano.

http://www.alhambra-eidos.es/web2005/index.html
www.kiquenet.net
http://www.setbb.com/putainformatic...opic.php?p„3
www.trabajobasura.com/solusoft

Preguntas similares