Conulta con Like a un campo int

15/04/2010 - 00:06 por RP | Informe spam
Hola que tal, bueno resulta que tengo un campo del tipo int llamado Numero,
lo que deseo es hacer una consulta usando un Like, pero no me sale, según vi,
tendria que convertir dicho campo a varchar, mejor les muestro mi select
inicial:

Select
Numero, Historial
From
tabla
Where Numero Like '%@valor_a_buscar%'

averiguando encontre la sugerencia de hacer una conversión de esta forma

Select
Numero, Historial
From
tabla
Where Cast(Numero As varchar(9)) Like '%@valor_a_buscar%'

Pero me marca un error de desbordamiento, así que quisiera saber si hay
alguna forma de poder realizar la consulta mencionada anteriormente,
agradezco de antemano la ayuda brindada
 

Leer las respuestas

#1 Miguel Egea
15/04/2010 - 00:56 | Informe spam
me parece un error buscar así, pero si lo necesitas...
select numero,historial from tabla where cast(numero as varchar(20)) like



(esto matará el rendimiento y no permitirá el uso de índices en el campo
número, quizá mejor crea una columna calculada que sea el cast y genera un
indice sobre ella.

Saludos Cordiales
Miguel Egea
Solid Quality Mentos
http://www.portalsql.com

"RP" escribió en el mensaje de
noticias:
Hola que tal, bueno resulta que tengo un campo del tipo int llamado
Numero,
lo que deseo es hacer una consulta usando un Like, pero no me sale, según
vi,
tendria que convertir dicho campo a varchar, mejor les muestro mi select
inicial:

Select
Numero, Historial
From
tabla
Where Numero Like '%@valor_a_buscar%'

averiguando encontre la sugerencia de hacer una conversión de esta forma

Select
Numero, Historial
From
tabla
Where Cast(Numero As varchar(9)) Like '%@valor_a_buscar%'

Pero me marca un error de desbordamiento, así que quisiera saber si hay
alguna forma de poder realizar la consulta mencionada anteriormente,
agradezco de antemano la ayuda brindada

Preguntas similares