entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

2votos

Convertir un campo de tipo varchar a numeric en sql

Hola amigos, necesito cambiar un tipo de dato en una tabla que ya contiene datos, por favor ayuda lo estuve intentando así

SELECT OrderDate, CONVERT(numeric(10,8), OrderDate)
FROM Orders 

pero me manda error

"Error converting data type varchar to numeric"

igual lo intente desde el diseño de la tabla pero no me deja
Ayuda !!!

1 Respuesta

1voto

Leonardo-Tadei Puntos227320

El problema seguramente está en que hay campos que tienen string que no son convertibles a números.

Podrías primero crear otra columna, pasar todos los datos convertidos (que se puedan) a esa columna, luego borrar la varchar y por último renombrar la columna temporaria al nombre de la columna original.

UPDATE Tabla SET OrderDate=tmp

No es elegante pero en la práctica funciona mucho mejor!

0voto

rach comentado

gracias por responder, pero como los convierto?

0voto

Leonardo-Tadei comentado

De la forma que te digo no hace falta conversión: el matching interno de la DB asigna lo que puede al campo numérico... perderás los string que no contengan números, es decir, los que no tienen sentido.

Hacé una copia de la tabla y probalo!

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta