Funcion en un select para devolver el valor de un campo de tipo varchar.
es decir si tengo
101g
4506hj
78r
quiero obtener
101
4506
78
y si es necesario poder ordenarlo por valor
| |||
funcion en SQL Funcion en un select para devolver el valor de un campo de tipo varchar. es decir si tengo 101g 4506hj 78r quiero obtener 101 4506 78 y si es necesario poder ordenarlo por valor |
| |||
Conversión Hola estoy usando SQL Server 2000 y tengo un campo de tipo varchar y quiero obtener la parte numerica y poder ordenar por este campo pero como te digo en forma numerica, estoy desarrollando en VB. Net |
| |||
Hola, mira esta funcion: create function nocar(@var varchar(10)) returns integer as begin declare @i int --indice declare @l int --longitud declare @c char(2) --caracter declare @retorno int --retorno declare @var2 varchar(10) set @i=1 set @l=len(@var) set @var2=@var while (@i<=@l) begin set @c=substring(@var,@i,1) if (ascii(@c)<48) begin set @var2=replace(@var2,@c,'') end if (ascii(@c)>57) begin set @var2=replace(@var2,@c,'') end set @i = @i + 1 end set @l=len(@var2) if @l>0 begin set @retorno=cast( @var2 as integer) end else begin set @retorno=0 end return (@retorno) end y lo llamaba asi: select mibd.dbo.nocar(campo1) as nro,campo2 from mitabla order by nro desc el ascci 48 =1 y el 57 = 0, por eso ese intervalo por supuesto, es solo una idea pero te puede servir. suerte y saludos
__________________ Jose A |