SP + like + %

27/09/2003 - 10:33 por Sebastian | Informe spam
CREATE PROCEDURE [listar_socios]
@numero int
AS
SELECT * FROM socio WHERE id_so LIKE '@numero%'
go

el problema que tengo con este SP es que me dice que no puede convertir el
simbolo% a int pero lo que yo quiero es que me busque todos los socios que
empiecen con el numero que le paso como parametro o sea si le paso un 10 me
busque todos los socios cuyo id comienza con 10
si alguien sabe como debo hacer le agradeceria que me digo como
Desde ya muchisimas Gracias
Saludos
Sebastian
 

Leer las respuestas

#1 Eladio Rincón
27/09/2003 - 11:46 | Informe spam
Hola,

debes pensar que el operador like es para comparar cadenas; lo que deberías hacer es convertir la columna numérica que quieres comparar a tipo cadena: char, varchar, ...

ejemplo:
create table test3 ( id int )
go
insert into test3 values ( 1 )
insert into test3 values ( 2 )
insert into test3 values ( 10 )
insert into test3 values ( 100 )
insert into test3 values ( 200 )

select *
from test3
where cast ( id as char(3) ) like '1%'


Eladio Rincón
SQL Server MVP
http://eladio.europe.webmatrixhosting.net



"Comparte lo que sabes, aprende lo que no sepas." FGG

"Sebastian" escribió en el mensaje news:
CREATE PROCEDURE [listar_socios]
@numero int
AS
SELECT * FROM socio WHERE id_so LIKE '@numero%'
go

el problema que tengo con este SP es que me dice que no puede convertir el
simbolo% a int pero lo que yo quiero es que me busque todos los socios que
empiecen con el numero que le paso como parametro o sea si le paso un 10 me
busque todos los socios cuyo id comienza con 10
si alguien sabe como debo hacer le agradeceria que me digo como
Desde ya muchisimas Gracias
Saludos
Sebastian


Preguntas similares