CONVERT

19/07/2005 - 21:19 por Cristian | Informe spam
Estimados

Tengo lo siguiente :

Select convert(numeric,dato) from TABLA

El error :

"Error al convertir el tipo de datos varchar a numeric"

Esta claro, por algun motivo hay un dato que es una letra y no puede
convertir .

El tema es :

Como decirle que solo me muestre los datos que si puede convertir ?

Atentamente,
Cristian

Preguntas similare

Leer las respuestas

#1 Cristian
19/07/2005 - 21:32 | Informe spam
Ya esta listo.

Cristian escribió:

Estimados

Tengo lo siguiente :

Select convert(numeric,dato) from TABLA

El error :

"Error al convertir el tipo de datos varchar a numeric"

Esta claro, por algun motivo hay un dato que es una letra y no puede
convertir .

El tema es :

Como decirle que solo me muestre los datos que si puede convertir ?

Atentamente,
Cristian
Respuesta Responder a este mensaje
#2 Maxi
19/07/2005 - 21:34 | Informe spam
Hola, busca en los BOL la funcion Isnumeric


Salu2
Maxi


"Cristian" escribió en el mensaje
news:
Estimados

Tengo lo siguiente :

Select convert(numeric,dato) from TABLA

El error :

"Error al convertir el tipo de datos varchar a numeric"

Esta claro, por algun motivo hay un dato que es una letra y no puede
convertir .

El tema es :

Como decirle que solo me muestre los datos que si puede convertir ?

Atentamente,
Cristian
Respuesta Responder a este mensaje
#3 Alejandro Mesa
19/07/2005 - 21:51 | Informe spam
Cristian,

Cuidado con la funcion IsNumeric, devuelve 1 cuando la expresion es similar
a la representacion cientifica de un numero (3.40E+10), pero sin embargo la
funcion convert te dara error si tratas de convertirlo a numeric.

Ejemplo:

select
convert(float, c1)
from
(
select '3.40E+10' as c1
) as t1
where
isnumeric(c1) = 1

select
convert(numeric, c1)
from
(
select '3.40E+10' as c1
) as t1
where
isnumeric(c1) = 1
go


AMB

"Cristian" wrote:

Ya esta listo.

Cristian escribió:

> Estimados
>
> Tengo lo siguiente :
>
> Select convert(numeric,dato) from TABLA
>
> El error :
>
> "Error al convertir el tipo de datos varchar a numeric"
>
> Esta claro, por algun motivo hay un dato que es una letra y no puede
> convertir .
>
> El tema es :
>
> Como decirle que solo me muestre los datos que si puede convertir ?
>
> Atentamente,
> Cristian

Respuesta Responder a este mensaje
#4 Cristian
19/07/2005 - 22:41 | Informe spam
Perfecto buen dato.
Cual es la diferencia de usar convert o cast ?
El BOL dice :

CAST se basa en el estándar SQL-92 y se prefiere antes que CONVERT.

Pero nada mas.
Me podrian dar algunos otros datos ?

Alejandro Mesa escribió:

Cristian,

Cuidado con la funcion IsNumeric, devuelve 1 cuando la expresion es similar
a la representacion cientifica de un numero (3.40E+10), pero sin embargo la
funcion convert te dara error si tratas de convertirlo a numeric.

Ejemplo:

select
convert(float, c1)
from
(
select '3.40E+10' as c1
) as t1
where
isnumeric(c1) = 1

select
convert(numeric, c1)
from
(
select '3.40E+10' as c1
) as t1
where
isnumeric(c1) = 1
go


AMB

"Cristian" wrote:


Ya esta listo.

Cristian escribió:


Estimados

Tengo lo siguiente :

Select convert(numeric,dato) from TABLA

El error :

"Error al convertir el tipo de datos varchar a numeric"

Esta claro, por algun motivo hay un dato que es una letra y no puede
convertir .

El tema es :

Como decirle que solo me muestre los datos que si puede convertir ?

Atentamente,
Cristian



Respuesta Responder a este mensaje
#5 Alejandro Mesa
19/07/2005 - 22:50 | Informe spam
Cristian,

Si te fijas bien ambas funciones son diferentes. La funcion convert, tiene
el parametro "style", el cual es muy util para formatear ciertas
conversiones.


AMB

"Cristian" wrote:

Perfecto buen dato.
Cual es la diferencia de usar convert o cast ?
El BOL dice :

CAST se basa en el estándar SQL-92 y se prefiere antes que CONVERT.

Pero nada mas.
Me podrian dar algunos otros datos ?

Alejandro Mesa escribió:

> Cristian,
>
> Cuidado con la funcion IsNumeric, devuelve 1 cuando la expresion es similar
> a la representacion cientifica de un numero (3.40E+10), pero sin embargo la
> funcion convert te dara error si tratas de convertirlo a numeric.
>
> Ejemplo:
>
> select
> convert(float, c1)
> from
> (
> select '3.40E+10' as c1
> ) as t1
> where
> isnumeric(c1) = 1
>
> select
> convert(numeric, c1)
> from
> (
> select '3.40E+10' as c1
> ) as t1
> where
> isnumeric(c1) = 1
> go
>
>
> AMB
>
> "Cristian" wrote:
>
>
>>Ya esta listo.
>>
>>Cristian escribió:
>>
>>
>>>Estimados
>>>
>>>Tengo lo siguiente :
>>>
>>>Select convert(numeric,dato) from TABLA
>>>
>>>El error :
>>>
>>>"Error al convertir el tipo de datos varchar a numeric"
>>>
>>>Esta claro, por algun motivo hay un dato que es una letra y no puede
>>>convertir .
>>>
>>>El tema es :
>>>
>>>Como decirle que solo me muestre los datos que si puede convertir ?
>>>
>>>Atentamente,
>>>Cristian
>>

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