Convertir campo varchar a int para comprobación

21/03/2007 - 17:25 por Masta | Informe spam
Hola a todos.

Tengo una tabla con un campo referencia como varchar(50) (aunque estas
referencias son números). Le paso una referencia por consulta, y
quiero que me muestre los registros a partir de esa referencia, pero
no me lo hace correctamente.


Stored Procedure..
(
@minimo as int
)

AS
select referencia from tabla where referencia>@minimo


Esto me devuelve lo que quiere.. referencias por encima y por debajo..

Si pruebo esto:
select referencia from tabla where cast(referencia as int)>@minimo

Me da el siguiente error de conversión:
"Error de conversión al convertir el valor varchar 'R3011' al tipo de
datos int"

¿Cómo puedo hacerlo sin cambiar el tipo de datos del campo en
cuestión?

Muchas gracias por vuestra ayuda
 

Leer las respuestas

#1 Yan Cantuarias
21/03/2007 - 18:09 | Informe spam
cast(MiCampoCadena as int)

"Masta" escribió en el mensaje
news:
Hola a todos.

Tengo una tabla con un campo referencia como varchar(50) (aunque estas
referencias son números). Le paso una referencia por consulta, y
quiero que me muestre los registros a partir de esa referencia, pero
no me lo hace correctamente.


Stored Procedure..
(
@minimo as int
)

AS
select referencia from tabla where referencia>@minimo


Esto me devuelve lo que quiere.. referencias por encima y por debajo..

Si pruebo esto:
select referencia from tabla where cast(referencia as int)>@minimo

Me da el siguiente error de conversión:
"Error de conversión al convertir el valor varchar 'R3011' al tipo de
datos int"

¿Cómo puedo hacerlo sin cambiar el tipo de datos del campo en
cuestión?

Muchas gracias por vuestra ayuda

Preguntas similares