Conversion tipo Nvarchar a numeric

06/12/2005 - 14:28 por Erick Sanchez | Informe spam
Buenos Dias
si yo tengo una tabla X que tiene una columna con valores numericos pero que
su tipo de datos es nvarchar 50 como puedo convertirla a numeric o decimal 9
(18,2) ¿Usando Cast o Convert?

Tabla X
nombre valor
agustin 48.75
jose 54.85

segun dice la ayuda de sql la conversion de nvarchar a numeric o decimal es
implicita pero trato de hacer un insert into Tabla Y (una tabla temporal) y
me manda un error que no se puede convertir. Intente tambien hacer un dts
pero me da el mismo resultado. Me imagino que es por que algun dato tiene
algo mal escrito pero son 25000 filas aproximadamente ponerce a revisar esta
dificil.

Preguntas similare

Leer las respuestas

#1 Turus.Sys
06/12/2005 - 14:46 | Informe spam
Intenta de esta forma


SELECT CAST(CAST('48.75' AS FLOAT) AS DECIMAL(18,2))

SELECT CAST(CAST('54.85' AS FLOAT) AS DECIMAL(18,2))

Saludos
Darío Flores
Respuesta Responder a este mensaje
#2 Turus.Sys
06/12/2005 - 14:56 | Informe spam
ó directamente

SELECT CAST('48.75' AS DECIMAL(18,2))


SELECT CAST('54.85' AS DECIMAL(18,2))

Darío
Respuesta Responder a este mensaje
#3 Erick Sanchez
06/12/2005 - 15:00 | Informe spam
Esto me servira para los 25000 valores

escribió en el mensaje
news:
Intenta de esta forma


SELECT CAST(CAST('48.75' AS FLOAT) AS DECIMAL(18,2))

SELECT CAST(CAST('54.85' AS FLOAT) AS DECIMAL(18,2))

Saludos
Darío Flores
Respuesta Responder a este mensaje
#4 Turus.Sys
06/12/2005 - 15:13 | Informe spam
Yo no conozco los 25000 valores, pero si el número representado como
String
es correcto(como el que posteaste como ejemplo) podra ser convertido
correctamente.-

Saludos
Darío Flores

Pd: Tene en cuenta los espacio en blanco que podria tener el String!
Respuesta Responder a este mensaje
#5 Alejandro Mesa
06/12/2005 - 17:01 | Informe spam
Erick,

Si estas seguro que todos los valores pueden ser convertidos, entonces
puedes usar la funcion CAST o CONVERT directamente, si no entonces aca te
paso un link a una funcion que te permite saber si el valor almacenado en esa
cadena puede ser convertido a decimal.

What is wrong with IsNumeric()?
http://www.aspfaq.com/show.asp?id#90


AMB

"Erick Sanchez" wrote:

Esto me servira para los 25000 valores

escribió en el mensaje
news:
Intenta de esta forma


SELECT CAST(CAST('48.75' AS FLOAT) AS DECIMAL(18,2))

SELECT CAST(CAST('54.85' AS FLOAT) AS DECIMAL(18,2))

Saludos
Darío Flores



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida