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

¿como truncar en MSSQL Server 2000?

Estas en el tema de ¿como truncar en MSSQL Server 2000? en el foro de Bases de Datos General en Foros del Web. holas nuevamente, necesito lo siguiente: obtengo un resultado con 4 decimales y deseo dejarlo en 2 decimales, saben como hacerlo (truncar) gracias....
  #1 (permalink)  
Antiguo 14/05/2005, 17:25
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 19 años, 8 meses
Puntos: 0
¿como truncar en MSSQL Server 2000?

holas nuevamente, necesito lo siguiente:
obtengo un resultado con 4 decimales y deseo dejarlo en 2 decimales, saben como hacerlo (truncar)

gracias.
__________________
"How do you define Real?"
  #2 (permalink)  
Antiguo 16/05/2005, 09:48
Avatar de xcars  
Fecha de Ingreso: mayo-2005
Ubicación: El Salvador
Mensajes: 753
Antigüedad: 19 años
Puntos: 4
esta es una forma
ROUND
Devuelve una expresión numérica, redondeada a la longitud o precisión especificada.

Sintaxis
ROUND ( numeric_expression , length [ , function ] )

Argumentos
numeric_expression

Es una expresión de la categoría de tipo de datos numérico exacto o numérico aproximado, excepto para el tipo de datos bit.

length

Es la precisión a la que se debe redondear numeric_expression. length debe ser del tipo tinyint, smallint o int. Cuando length es un número positivo, numeric_expression se redondea al número de posiciones decimales especificado en length. Cuando length es un número negativo, numeric_expression se redondea en el lado izquierdo del separador decimal, como se especifica en length.

función

Es el tipo de operación que se va a realizar. function debe ser del tipo tinyint, smallint o int. Cuando se omite function o tiene el valor 0 (predeterminado), se redondea numeric_expression. Cuando se especifica un valor distinto de 0, se trunca numeric_expression.

Tipos devueltos
Devuelve el mismo tipo que numeric_expression.

Observaciones
ROUND siempre devuelve un valor. Si length es un valor negativo y mayor que el número de dígitos anteriores al separador decimal, ROUND devuelve 0.

Ejemplo Resultado
ROUND(748.58, -4) 0


ROUND devuelve una expresión numeric_expression con redondeo, independientemente de los tipos de datos, cuando length es un número negativo.

Ejemplos Resultado
ROUND(748.58, -1) 750.00
ROUND(748.58, -2) 700.00
ROUND(748.58, -3) 1000.00


Ejemplos
A. Utilizar ROUND y valores estimados
En este ejemplo se muestran dos expresiones que ilustran que, con la función ROUND, los últimos dígitos son siempre valores estimados.

SELECT ROUND(123.9994, 3), ROUND(123.9995, 3)
GO

El siguiente es el conjunto de resultados:

----------- -----------
123.9990 124.0000

B. Utilizar ROUND y aproximaciones de redondeo
En este ejemplo se muestran redondeos y aproximaciones.

Instrucción Resultado
SELECT ROUND(123.4545, 2)


123.4500

SELECT ROUND(123.45, -2)


100.00



C. Utilizar ROUND para truncar
En este ejemplo se utilizan dos instrucciones SELECT para demostrar la diferencia entre redondear y truncar. La primera instrucción redondea el resultado. La segunda instrucción lo trunca.

Instrucción Resultado
SELECT ROUND(150.75, 0)


151.00

SELECT ROUND(150.75, 0, 1)


150.00
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 13:25.