Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Resultado Con Decimales

Estas en el tema de Resultado Con Decimales en el foro de SQL Server en Foros del Web. Compadres estoy intentando ejecutar una operacion en el analizador de consultas de SQL SERVER, DECLARE @B DECIMAL(9,3) SET @B=(8/12) CONVERT(DECIMAL(5,2),@B) y el resultado es 0.00 ...
  #1 (permalink)  
Antiguo 05/03/2007, 14:38
Avatar de charlyrosero  
Fecha de Ingreso: julio-2006
Mensajes: 161
Antigüedad: 17 años, 9 meses
Puntos: 5
Exclamación Resultado Con Decimales

Compadres estoy intentando ejecutar una operacion en el analizador de consultas de SQL SERVER,

DECLARE @B DECIMAL(9,3)
SET @B=(8/12)

CONVERT(DECIMAL(5,2),@B) y el resultado es 0.00 ¿? cuando el resultado es 0.6666

pues necesito estos decimales, los cuales me significan, en la sumatoria total......... alguna ayuda ?

Última edición por charlyrosero; 05/03/2007 a las 14:47
  #2 (permalink)  
Antiguo 06/03/2007, 07:45
 
Fecha de Ingreso: enero-2007
Mensajes: 11
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: Resultado Con Decimales

Prueba con set @b=(8.0/12.0)

Saludos.
  #3 (permalink)  
Antiguo 08/03/2007, 10:06
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Re: Resultado Con Decimales

Ya te dieron el truco.

Lo que pasa es que la división es entera, por lo que 8/12 da cero, y sobre ese cero es que haces la conversión, con lo que terminas con un bonito 0.00

Si en lugar de 8 y 12 tienes valores variables entonces prueba usar convert:

DECLARE @B DECIMAL(9,3)
SET @B=(Convert(Float, 8)/Convert(Float, 12))
PRINT CONVERT(DECIMAL(5,2),@B)
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:50.