Problemas con FLOOR y CEILING

01/07/2004 - 04:22 por Ivan Alexander Laverde | Informe spam
Holas

Estoy trajando con SQLServer 2000

y les cuento que trato de hacer la siguinte operacion de
prueba

declare @x decimal(10,2)
Select @x= Convert(decimal(10,2),(83 / (35 - 5)),1)
Select @x
select Floor(@x)
select Ceiling(@x)

y el Ceiling siempre saca 2 y deberia ser 3

Si hago
Select @x= Convert(decimal(10,2),(83 / (35 - 5)),1)
o
Select @x= (83 / (35 - 5))

Siempre es el mismo resultado

Pero si hago
select Ceiling(2.76) Si funciona

Que conversion debo hacer o como hago para que saque datos
reales????

Gracias por su colaboracion

Se que es tonto eso pero no me funciona
 

Leer las respuestas

#1 José Raúl Fenollar Martínez
01/07/2004 - 11:28 | Informe spam
En vez de esto
Select @x= Convert(decimal(10,2),(83 / (35 - 5)),1)
es esto
Select @x= 83.00 / (35.00 - 5.00)

lo que quiere decir que debes convertir losmiembros individuales de la
dic¡vión a su tipo correspondiente, y no el resultado:

declare @x decimal(10,2),
@dividendo decimal(10,2),
@divisor decimal(10,2)

select @dividendoƒ,
@divisor=(35 - 5)

Select @x=@dividendo/@divisor

select Floor(@x)
select Ceiling(@x)

Saludos desde Gandia

"Ivan Alexander Laverde" escribió en
el mensaje news:2421001c45f12$3e5d79e0$
Holas

Estoy trajando con SQLServer 2000

y les cuento que trato de hacer la siguinte operacion de
prueba

declare @x decimal(10,2)
Select @x= Convert(decimal(10,2),(83 / (35 - 5)),1)
Select @x
select Floor(@x)
select Ceiling(@x)

y el Ceiling siempre saca 2 y deberia ser 3

Si hago
Select @x= Convert(decimal(10,2),(83 / (35 - 5)),1)
o
Select @x= (83 / (35 - 5))

Siempre es el mismo resultado

Pero si hago
select Ceiling(2.76) Si funciona

Que conversion debo hacer o como hago para que saque datos
reales????

Gracias por su colaboracion

Se que es tonto eso pero no me funciona










Preguntas similares