Patron de búsqueda

18/03/2005 - 10:40 por Tomas Martin | Informe spam
Tengo un SP al que le debo pasar como parámetro un patron alfanumerico y
quiero que me devuelva las filas cuya columna 'Docu [varchar]' cumple ese
patrón.
O sea si le paso 'A_B__C___' debería obtener todas las filas en las que la
columna Docu tengan una A en la primera posición, B en la 3 y C en la 6.

Estoy intentandolo con PATINDEX pero no me funciona cuando se lo paso como
parámetro.

Esto me va bien, me devuelve los registros correctamente
SELECT * FROM tabla WHERE PATINDEX(''A_B__C___%',Docu)<>0

pero esto no me devuelve nada
DECLARE @Patron char(10)
SET @Patron='''A_B__C___%'
SELECT * FROM tabla WHERE PATINDEX(@Patron,Docu)<>0

alguna idea?

Tomás
 

Leer las respuestas

#1 Carlos Sacristán
18/03/2005 - 10:47 | Informe spam
Sustituye el tipo de dato de la variable @Patron por VARCHAR en vez del
que tienes y nos cuentas


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Tomas Martin" <t o m a s m m [ARROBA] m i c r o v e n [punto] n e t>
escribió en el mensaje news:
Tengo un SP al que le debo pasar como parámetro un patron alfanumerico y
quiero que me devuelva las filas cuya columna 'Docu [varchar]' cumple ese
patrón.
O sea si le paso 'A_B__C___' debería obtener todas las filas en las que


la
columna Docu tengan una A en la primera posición, B en la 3 y C en la 6.

Estoy intentandolo con PATINDEX pero no me funciona cuando se lo paso como
parámetro.

Esto me va bien, me devuelve los registros correctamente
SELECT * FROM tabla WHERE PATINDEX(''A_B__C___%',Docu)<>0

pero esto no me devuelve nada
DECLARE @Patron char(10)
SET @Patron='''A_B__C___%'
SELECT * FROM tabla WHERE PATINDEX(@Patron,Docu)<>0

alguna idea?

Tomás


Preguntas similares