Conversion de texto a numero

05/08/2004 - 15:50 por Ricardo L. Calvo | Informe spam
Hola a todos,

Como convierto un dato de tipo caracter en numérico ?? tengo una columna
caracter que contiene un porcentaje y viene asi, ej: '%5' o '%15,3' o 'NO'
(sig. q no hay porcentaje), etc.
El problema es que debo quedarme con la parte numérica de esa columna para
aplicarla en un cálculo.

Muchas gracias desde ya

Preguntas similare

Leer las respuestas

#1 Maxi
05/08/2004 - 16:34 | Informe spam
Hola, revisa el uso de Convert o Cast en tus libros on line


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Ricardo L. Calvo" escribió en el mensaje
news:%
Hola a todos,

Como convierto un dato de tipo caracter en numérico ?? tengo una columna
caracter que contiene un porcentaje y viene asi, ej: '%5' o '%15,3' o 'NO'
(sig. q no hay porcentaje), etc.
El problema es que debo quedarme con la parte numérica de esa columna para
aplicarla en un cálculo.

Muchas gracias desde ya








Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.732 / Virus Database: 486 - Release Date: 29/07/2004
Respuesta Responder a este mensaje
#2 Ricardo L. Calvo
05/08/2004 - 16:44 | Informe spam
Los estuve viendo Maxi, cuado uso esta instruccion que es la q me serviria :

- select cast(fcrmvh_comage as decimal(5,2)) from fcrmvh

Obtengo este error :

- Error converting data type varchar to numeric.

Llevo una hora con esta estupidez, pense q habia una instruccion simple q lo
hacia (como en cualquier lenguaje)





"Maxi" escribió en el mensaje
news:
Hola, revisa el uso de Convert o Cast en tus libros on line


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Ricardo L. Calvo" escribió en el mensaje
news:%
> Hola a todos,
>
> Como convierto un dato de tipo caracter en numérico ?? tengo una


columna
> caracter que contiene un porcentaje y viene asi, ej: '%5' o '%15,3' o


'NO'
> (sig. q no hay porcentaje), etc.
> El problema es que debo quedarme con la parte numérica de esa columna


para
> aplicarla en un cálculo.
>
> Muchas gracias desde ya
>
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.732 / Virus Database: 486 - Release Date: 29/07/2004


Respuesta Responder a este mensaje
#3 Maxi
05/08/2004 - 17:16 | Informe spam
hola, mira esto:

DECLARE @N CHAR(10)

SET @N='1'

SELECT CONVERT(FLOAT,@N)

=
La cadena si tiene letras NO vas a poder convertirla de forma directa!!!

Como es la cadena?


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Ricardo L. Calvo" escribió en el mensaje
news:uhWl$
Los estuve viendo Maxi, cuado uso esta instruccion que es la q me serviria


:

- select cast(fcrmvh_comage as decimal(5,2)) from fcrmvh

Obtengo este error :

- Error converting data type varchar to numeric.

Llevo una hora con esta estupidez, pense q habia una instruccion simple q


lo
hacia (como en cualquier lenguaje)





"Maxi" escribió en el mensaje
news:
> Hola, revisa el uso de Convert o Cast en tus libros on line
>
>
> Salu2
> Maxi
> Buenos Aires - Argentina
> Desarrollador Microsoft 3 Estrellas .NET
> Nunca consideres el estudio como una obligación sino como
> una oportunidad para penetrar en el bello y maravillosos
> mundo del saber.
> - Albert Einstein
>
>
>
> "Ricardo L. Calvo" escribió en el mensaje
> news:%
> > Hola a todos,
> >
> > Como convierto un dato de tipo caracter en numérico ?? tengo una
columna
> > caracter que contiene un porcentaje y viene asi, ej: '%5' o '%15,3' o
'NO'
> > (sig. q no hay porcentaje), etc.
> > El problema es que debo quedarme con la parte numérica de esa columna
para
> > aplicarla en un cálculo.
> >
> > Muchas gracias desde ya
> >
> >
> >
>
>
>
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.732 / Virus Database: 486 - Release Date: 29/07/2004
>
>







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.732 / Virus Database: 486 - Release Date: 29/07/2004
Respuesta Responder a este mensaje
#4 Ricardo L. Calvo
05/08/2004 - 17:57 | Informe spam
y si, puede tener letras ...

Ejemplo : 'NO' q significa q no hay porcentaje
o puede tener un simbolo de % delante del numero ejemplo : '%5', significa q
hay q calcular el 5 por ciento

O sea, esta medio feo por lo q veo ...


"Maxi" escribió en el mensaje
news:
hola, mira esto:

DECLARE @N CHAR(10)

SET @N='1'

SELECT CONVERT(FLOAT,@N)

=>
La cadena si tiene letras NO vas a poder convertirla de forma directa!!!

Como es la cadena?


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Ricardo L. Calvo" escribió en el mensaje
news:uhWl$
> Los estuve viendo Maxi, cuado uso esta instruccion que es la q me


serviria
:
>
> - select cast(fcrmvh_comage as decimal(5,2)) from fcrmvh
>
> Obtengo este error :
>
> - Error converting data type varchar to numeric.
>
> Llevo una hora con esta estupidez, pense q habia una instruccion simple


q
lo
> hacia (como en cualquier lenguaje)
>
>
>
>
>
> "Maxi" escribió en el mensaje
> news:
> > Hola, revisa el uso de Convert o Cast en tus libros on line
> >
> >
> > Salu2
> > Maxi
> > Buenos Aires - Argentina
> > Desarrollador Microsoft 3 Estrellas .NET
> > Nunca consideres el estudio como una obligación sino como
> > una oportunidad para penetrar en el bello y maravillosos
> > mundo del saber.
> > - Albert Einstein
> >
> >
> >
> > "Ricardo L. Calvo" escribió en el mensaje
> > news:%
> > > Hola a todos,
> > >
> > > Como convierto un dato de tipo caracter en numérico ?? tengo una
> columna
> > > caracter que contiene un porcentaje y viene asi, ej: '%5' o '%15,3'


o
> 'NO'
> > > (sig. q no hay porcentaje), etc.
> > > El problema es que debo quedarme con la parte numérica de esa


columna
> para
> > > aplicarla en un cálculo.
> > >
> > > Muchas gracias desde ya
> > >
> > >
> > >
> >
> >
> >
> > Outgoing mail is certified Virus Free.
> > Checked by AVG anti-virus system (http://www.grisoft.com).
> > Version: 6.0.732 / Virus Database: 486 - Release Date: 29/07/2004
> >
> >
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.732 / Virus Database: 486 - Release Date: 29/07/2004


Respuesta Responder a este mensaje
#5 Javier Loria
05/08/2004 - 18:19 | Informe spam
Hola Ricardo:
Algo como esto:
==SELECT ColumnaX,
CASE
WHEN ISNUMERIC(ColumnaX)=1
THEN CAST(ColumnaX AS DECIMAL(9,2))
WHEN LEFT(ColumnaX,1)='%'
AND ISNUMERIC(SUBSTRING(ColumnaX,2,LEN(ColumnaX)-1))=1
THEN CAST(SUBSTRING(ColumnaX,2,LEN(ColumnaX)-1) AS
DECIMAL(9,2))
WHEN ColumnaX='NO'
THEN 0
ELSE -1
END AS Numero
FROM MiTabla
== Este tiene 3 casos, el numero solo, el % y un numero despues, y No,
cualquier otra cosa se convirte en -1 para poder investigarla.
Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Ricardo L. Calvo escribio:
Hola a todos,

Como convierto un dato de tipo caracter en numérico ?? tengo una
columna caracter que contiene un porcentaje y viene asi, ej: '%5' o
'%15,3' o 'NO' (sig. q no hay porcentaje), etc.
El problema es que debo quedarme con la parte numérica de esa columna
para aplicarla en un cálculo.

Muchas gracias desde ya
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida