Usar Round y Truncate en MySQL

mysql

Todo aquel que haya trabajado con datos de tipo real, sabe el engorro que supone ajustar el número de decimales al mostrar un dato. Tanto para redondear como para truncar directamente un número.

Pues bien, ¿Cómo hacemos esto en MySQL? Muy sencillo,  podemos encontrar dos funciones matemáticas que nos facilitarán esta tarea. ROUND para redondear valores y TRUNCATE para utilizar un determinado número de decimales del dato.

ROUND

Sirve para redondear valores, tanto a entero, como (según los decimales que le indiquemos) a decimales. Un ejemplo sería el tener que redondear para trabajar con moneda, sólo con dos decimales, los céntimos. MySQL posee dos tipos de función, con uno y con dos parámetros ROUND(D) y ROUND(D,N).

  • ROUND(D) devolverá el parámetro D, redondeado al entero más cercano.
  • ROUND(D,N) Devuelve D redondeado a N decimales. Además si N fuese un valor negativo, redondearía a N dígitos por la izquierda del punto decimal del valor D. Esto se ve mejor con unos ejemplos.

Por ejemplo, tenemos el dato PI= 3,141592653589….

Si lo quisiésemos mostrar redondeado, con sólo 4 decimales, la sintaxis sería

Source   
  1. SELECT ROUND(PI,4);

Esto devolverá:    3,1416

Si lo que queremos hacer es mostrar el dato, redondeado al entero más cercano, haremos:

Source   
  1. SELECT ROUND(PI);

Lo que devolvería:    3

También redondea al valor superior, a partir de cinco, si no le indicamos lo contrario:

Source   
  1. SELECT ROUND(4.5);

Devolvería:    5

TRUNCATE

Cuando trabajamos con números reales, que poseen un número de decimales considerable, es conveniente dar formato a los datos. Así podremos mostrarlos al usuario de una manera clara, y por qué no, elegante. Para esto sirve TRUNCATE.

  • TRUNCATE(D,N) Devolverá el número D con tan sólo N decimales. Aquí tienes unos ejemplos:
Source   
  1. SELECT TRUNCATE (PI,4);

Devuelve: 3,1415

Source   
  1. SELECT TRUNCATE (PI,0);

Devolverá: 3

Source   
  1. SELECT TRUNCATE (123,-2);

Te devolverá: 100  Ya que hace cero, N números por la izquierda del punto decimal.

 

Espero que os sea de utilidad, un saludo y nos os olvidéis de compartir en las redes sociales

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *