Ver Mensaje Individual
  #3 (permalink)  
Antiguo 25/06/2012, 08:07
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: Crear dos columnas dependiendo de los datos de una

Hola jcayon:

Existe otra forma con la que podrías obtener los resultados que quieres y sería con agrupaciones condicionales... Aquí la pregunta sería si sólo vas a tener una media, mínima y máxima por sensor y por fecha... Observa este ejemplo:

Código MySQL:
Ver original
  1. mysql> SELECT * FROM tabla;
  2. +--------+----------+-------+---------------------+
  3. | sensor | Atributo | Valor | FechaHora           |
  4. +--------+----------+-------+---------------------+
  5. |      1 | Media    |  15.5 | 2012-06-18 17:40:00 |
  6. |      1 | Maxima   |  17.5 | 2012-06-18 17:40:00 |
  7. |      1 | Minima   |  13.5 | 2012-06-18 17:40:00 |
  8. +--------+----------+-------+---------------------+
  9. 3 rows in set (0.00 sec)
  10.  
  11. mysql> SELECT
  12.     ->   sensor,
  13.     ->   AVG(IF(atributo = 'Media', valor, NULL)) media,
  14.     ->   AVG(IF(atributo = 'Maxima', valor, NULL)) maxima,
  15.     ->   AVG(IF(atributo = 'Minima', valor, NULL)) minima,
  16.     ->   fechaHora
  17.     -> FROM tabla
  18.     -> GROUP BY sensor, fechaHora;
  19. +--------+----------+----------+----------+---------------------+
  20. | sensor | media    | maxima   | minima   | fechaHora           |
  21. +--------+----------+----------+----------+---------------------+
  22. |      1 | 15.50000 | 17.50000 | 13.50000 | 2012-06-18 17:40:00 |
  23. +--------+----------+----------+----------+---------------------+
  24. 1 row in set (0.00 sec)

Observa en primer lugar que estoy utilizando tres agrupaciones AVG condicionales, en cada IF estoy colocando cada uno de los posible valores que tienes (si tuvieras más atributos deberías considerarlos también).

Dale un vistazo para ver si te sirve.

Saludos
Leo.