parte entera de un numero??

21/10/2003 - 18:21 por jon | Informe spam
hola a migos, tengo un pequeño ejercicio, haber si me ayudan

tengo un numero 123.45

quiero obtener solo: 123
ademas aparte : 0.45

almacenados en variables.

alguno sabe cuales son las funciones




gracias de antemano al grupo.

Preguntas similare

Leer las respuestas

#1 Rubén Vigón
21/10/2003 - 18:31 | Informe spam
[...] Int, Fix (Funciones)
Devuelve la parte entera de un número.
Las funciones Int y Fix eliminan la fracción de un número y devuelven el valor entero resultante. La
diferencia entre Int y Fix es que si el número es negativo, Int devuelve el primer entero negativo
menor o igual a número, mientras que Fix devuelve el primer entero negativo mayor o igual a número.
Por ejemplo, Int convierte -8.4 en -9 y Fix convierte -8.4 a -8

Un saludo!

Rubén Vigón
Microsoft MVP Visual Basic

(Guía de buen uso del foro)
http://perso.wanadoo.es/rubenvigon/foro
Respuesta Responder a este mensaje
#2 Rubén Vigón
21/10/2003 - 18:35 | Informe spam
Perdon, me equivoqué de grupo :-) Para SQL Server sería:

FLOOR: Devuelve el entero más grande menor o igual que la expresión numérica dada
CEILING: Devuelve el entero más pequeño mayor o igual que la expresión numérica dada
ROUND: Devuelve una expresión numérica, redondeada a la longitud o precisión especificada

Un saludo!

Rubén Vigón
Microsoft MVP Visual Basic
Respuesta Responder a este mensaje
#3 Liliana Sorrentino
21/10/2003 - 20:26 | Informe spam
Hola,
Te mando ejemplos para que puedas elegir según el tipo de datos con el que
te manejes.
Saludos... Liliana.

set nocount on
declare @a dec(10,2)
select @a = 123.45
select valor = @a, [int] = convert(int, @a), [floor] = floor(@a), [ceiling]
= ceiling(@a), [round] = round(@a,0), resto = @a - convert(int, @a), [resto
absoluto] = abs(@a - convert(int, @a))
select @a = 123.95
select valor = @a, [int] = convert(int, @a), [floor] = floor(@a), [ceiling]
= ceiling(@a), [round] = round(@a,0), resto = @a - convert(int, @a), [resto
absoluto] = abs(@a - convert(int, @a))
select @a = -123.45
select valor = @a, [int] = convert(int, @a), [floor] = floor(@a), [ceiling]
= ceiling(@a), [round] = round(@a,0), resto = @a - convert(int, @a), [resto
absoluto] = abs(@a - convert(int, @a))
select @a = -123.95
select valor = @a, [int] = convert(int, @a), [floor] = floor(@a), [ceiling]
= ceiling(@a), [round] = round(@a,0), resto = @a - convert(int, @a), [resto
absoluto] = abs(@a - convert(int, @a))


"Rubén Vigón" escribió en el mensaje
news:#vFs$C$
Perdon, me equivoqué de grupo :-) Para SQL Server sería:

FLOOR: Devuelve el entero más grande menor o igual que la expresión


numérica dada
CEILING: Devuelve el entero más pequeño mayor o igual que la expresión


numérica dada
ROUND: Devuelve una expresión numérica, redondeada a la longitud o


precisión especificada

Un saludo!

Rubén Vigón
Microsoft MVP Visual Basic


Respuesta Responder a este mensaje
#4 Carlos Sacristan
22/10/2003 - 08:09 | Informe spam
Jejejeje... se te notan tus preferencias, eh Rubén? ;-)



Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)
MVP SQL Server
Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL

Archivo de respuestas anteriores en:
http://groups.google.com/groups?hl=....public.es
.sqlserver

(Guía de netiquette del foro)
http://www.helpdna.net/bosqlfaq00.htm
http://perso.wanadoo.es/rubenvigon/foro

(FAQ's de SQL Server)
http://support.microsoft.com/defaul.../70faq.asp
http://www.helpdna.net/bosqlfaq.htm

"Rubén Vigón" escribió en el mensaje
news:#vFs$C$
Perdon, me equivoqué de grupo :-) Para SQL Server sería:

FLOOR: Devuelve el entero más grande menor o igual que la expresión


numérica dada
CEILING: Devuelve el entero más pequeño mayor o igual que la expresión


numérica dada
ROUND: Devuelve una expresión numérica, redondeada a la longitud o


precisión especificada

Un saludo!

Rubén Vigón
Microsoft MVP Visual Basic


Respuesta Responder a este mensaje
#5 Norman A. Armas
22/10/2003 - 23:39 | Informe spam
Para eso se usa la funcion Round utilizando el tercer parametro:

declare @Numero numeric(18,3)
declare @ParteEntera numeric(18,3)
declare @ParteDecimal numeric(18,3)

set @Numero = 123.958
set @ParteEntera=round(@Numero,0,1)
set @ParteDecimal=@

select @Numero,@ParteEntera,@ParteDecimal



saludos


Norman




"jon" wrote in message
news:uevNd9%

hola a migos, tengo un pequeño ejercicio, haber si me ayudan

tengo un numero 123.45

quiero obtener solo: 123
ademas aparte : 0.45

almacenados en variables.

alguno sabe cuales son las funciones




gracias de antemano al grupo.



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