Muestra gráficas con MySql

Por el 6 de Diciembre de 2007

en: Programacion

Habitualmente utilizamos la sentencia SELECT para obtener y analizar información de la base de datos.

Pero lo utilizamos ignorando posibles mejoras que nos haría más sencillo el análisis de los datos, podríamos mejorar esta sentencia creando unas sencillas gráficas que se invocarán en las sentencias SELECT.

Aquí os dejo este sencillo ejemplo:

mysql> SELECT Nombre, Valor FROM Meses;
+———–+———+
| Name | Value |
+———–+———+
| Enero | 379.385 |
| Febrero | 906.076 |
| Marzo | 392.224 |
| Abril | 242.893 |
| Mayo | 37.7936 |
| Junio | 460.288 |
| Julio | 188.06 |
| Agosto | 559.437 |
| Septiembre| 233.005 |
| Octubre | 486.714 |
| Noviembre | 734.555 |
| Diciembre | 212.632 |
+———–+———+
12 rows in set (0.00 sec)


Para generar esas simples gráficas ya mencionadas, tendremos que ejecutar la siguiente consulta…

mysql> select Nombre, REPEAT(“#”, Valor/20.0+1) Grafica FROM Mes;
+———–+————————————————+
| Nombre | Grafica |
+———–+————————————————+
| Enero | #################### |
| Febrero | ############################################## |
| Marzo | ##################### |
| Abril | ############# |
| Mayo | ### |
| Junio | ######################## |
| Julio | ########## |
| Agosto | ############################# |
| Septiembre| ############# |
| Octubre | ######################### |
| Noviembre | ###################################### |
| Dicembre | ############ |
+———–+————————————————+
12 rows in set (0.00 sec)

Cómo habrás podido deducir dentro de la funcion REPEAT podrás definir la escala que definira el tamaño de las gráficas.

A primera vista puede parecer una tontería pero es una herramienta tan simple cómo útil a la hora de analizar información.

Ejemplo práctico

Ahora veamos un caso práctico en el que podríamos sacarle partido a este tipo de consultas:

“Supongamos que queremos listar la tabla de clasificación de una Liga de Fútbol, queremos obtener el número de puntos de cada uno de los equipos y poder apreciar la diferencia de puntos de uno a otro equipo de una manera rápida y visual.
En este caso vamos a utilizar dos campo: equipo (nombre del equipo), puntos (número de puntos)

select equipo, puntos from clasificacion order by puntos DESC


select equipo, REPEAT(“#”, puntos) Grafica from clasificacion order by puntos DESC


2 Respuestas a Muestra gráficas con MySql

Avatar

Vikingo

17 de Diciembre de 2007 a las 1:45 pm

interesante, no se me habria ocurrido ni en 100 años.
Puede ser util cuando es necesario mostrar estas sencillas graficas y no queremos darnos el trabajo de usar GD o algo similar cuando estamos escribiendo en PHP o algun otro lenguaje para web

De hecho, con un poco de codigo y una buena hoja de estilos podemos hacer que en lugar de los # se vea como una linea de un color determinado (o incluso una gradiente, ahora que estan tan de moda)

saludos

Avatar

Javier

6 de Diciembre de 2007 a las 6:11 pm

Curioso cuanto menos. Aunque utilidad práctica no tiene mucha

Dejar un comentario

Patrocinadores

¿Interesado en patrocinar TuFunción?

Suscripción

Primera División