SQL - Convertir int a decimal

 
Vista:

Convertir int a decimal

Publicado por Toni (7 intervenciones) el 27/04/2006 08:03:24
Tengo una tabla con varios campos, los campos Total y Parcial son int y el campo Porcentage es decimal(4,4)

Para obtener el Porcetage hago lo siguente.

UPDATE #RESERVES SET #RESERVES.PCentral = (CONVERT(decimal(4,4),Total)/ Parcial) -1

Y me da el siguente error

Servidor: mensaje 8115, nivel 16, estado 8, procedimiento spInfReserves, línea 52
Error de desbordamiento aritmético al convertir numeric al tipo de datos numeric.
Se terminó la instrucción.

Si hago la siguente instruccion tambien me da el mismo error
UPDATE #RESERVES SET #RESERVES.PCentral = (CONVERT(decimal(4,4),Total)

Como puedo hacer para convertir los campos Total y Parcial a decimal??

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Convertir int a decimal

Publicado por Liliana (426 intervenciones) el 27/04/2006 15:02:01
Hola Toni,
en los campos decimales, la precisión es la suma de dígitos a la derecha e izquierda de la coma, y la escala es la cantidad de decimales.
En tu caso necesitás hacer el convert a dec(8,4) o similar.
Saludos,
Liliana.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Convertir int a decimal

Publicado por Toni (7 intervenciones) el 27/04/2006 19:32:23
Muchas Gracias Liliana!

Lo he provado y funciona perfectamente, pero no entiendo muy bien tu explicacion
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Convertir int a decimal

Publicado por Liliana (426 intervenciones) el 28/04/2006 13:40:40
Toni,
En la ayuda del SQL está bien explicado, la precisión es la primera cantidad que ponés cuando definís un campo decimal, y se refiere al total de dígitos que tendrá tu cifra, en lo que yo te pasé es el 8, y la escala es la cantidad de decimales, en este caso 4.
Espero que así esté mejor,
Liliana.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Convertir int a decimal

Publicado por Toni (7 intervenciones) el 28/04/2006 19:38:30
Ahh ahora ya lo he pillado!! Muchas gracias por solucionar-me el problema y por las explicaciones.

Salut i força al canut!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar