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

[SOLUCIONADO] Consulta de Valores Máximos

Estas en el tema de Consulta de Valores Máximos en el foro de Mysql en Foros del Web. Buenos dias, Tengo la siguiente tabla en la BD, y remarco los valores máximos de Ocupacion de cada Central. Fecha Hora Central Nivel Ocupacion 18/02/2014 ...
  #1 (permalink)  
Antiguo 25/02/2014, 14:54
 
Fecha de Ingreso: enero-2013
Mensajes: 64
Antigüedad: 11 años, 3 meses
Puntos: 0
Consulta de Valores Máximos

Buenos dias,

Tengo la siguiente tabla en la BD, y remarco los valores máximos de Ocupacion de cada Central.

Fecha Hora Central Nivel Ocupacion
18/02/2014 02:00 PMRC2 CP00 53,71
18/02/2014 12:00 PMRC2 CP01 61,53
18/02/2014 12:00 PMRC2 CP02 64,5
18/02/2014 12:00 PMRC2 CP03 50,57
18/02/2014 12:00 PMRC2 CP04 74,18
18/02/2014 02:00 TLIBER CP00 50,21
18/02/2014 12:00 TLIBER CP01 59,02
18/02/2014 12:00 TLIBER CP02 51,97
18/02/2014 12:00 TLIBER CP03 41,73

El resultado que quiero que me tire la consulta, cuando consulto los valores Máximos de Ocupación por cada Central, sería:

Fecha Hora Central Nivel Ocupacion
18/02/2014 12:00 PMRC2 CP04 74,18
18/02/2014 12:00 TLIBER CP01 59,02

que indicaría la Hora y Nivel, correspondiente al valor máximo de ocupación.


La consulta que realice fue:

Código:
SELECT  DATE_FORMAT(Fecha,'%Y-%m-%d') AS Fecha, Hora, Central, Nivel,
MAX(Ocupacion) AS Max_Ocuppacion FROM bd_cpneax WHERE Fecha="2014-02-18" 
GROUP BY Central ORDER BY Max_Ocuppacion DESC
Pero cuando Ejecuto dicha consulta, el resultado es:

Fecha Hora Central Nivel Ocupacion
18/02/2014 02:00 PMRC2 CP00 74,18
18/02/2014 02:00 TLIBER CP00 59,02

Donde se puede ver que la Hora y Nivel no corresponden al Valor Máximo, sino que es la "primera" hora y "primer" nivel que aparece.

Necesitaría si alguien me puede ayudar con dicha consulta.

Espero que me hayan entendido. Muchas gracias. Saludos.
  #2 (permalink)  
Antiguo 27/02/2014, 05:35
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Consulta de Valores Máximos

Código MySQL:
Ver original
  1. SELECT  DATE_FORMAT(bd.Fecha,'%Y-%m-%d') Fecha,
  2.               bd.Hora,
  3.               bd.Central,
  4.               bd.Nivel,
  5.               Sbc.Max_Ocuppacion
  6. FROM bd_cpneax bd INNER JOIN
  7.                  (SELECT  Central, MAX(Ocupacion) AS Max_Ocuppacion
  8.                    FROM bd_cpneax WHERE Fecha="2014-02-18"
  9.                    GROUP BY Central) Sbc
  10.                ON bd.Central=Sbc.Central AND bd.Ocupacion=Sbc.Max_Ocuppacion
  11. WHERE bd.Fecha="2014-02-18"
  12. ORDER BY Sbc.Max_Ocuppacion DESC;

Y esto?
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 27/02/2014, 06:10
 
Fecha de Ingreso: enero-2013
Mensajes: 64
Antigüedad: 11 años, 3 meses
Puntos: 0
Respuesta: Consulta de Valores Máximos

Muchas gracias por tu respuesta,

La consulta que utilicé fue la siguiente:

Código:
Select Fecha , Hora , Central , Nivel , Ocupacion
From bd_cpneax
Inner join 
(
                SELECT  DATE_FORMAT(Fecha,'%Y-%m-%d') AS Fecha, Central, 
MAX(Ocupacion) AS Ocupacion
FROM bd_cpneax WHERE Fecha="2014-02-18" 
GROUP BY Central ORDER BY Ocupacion DESC
) A
Using (Fecha , Central , Ocupacion)

Etiquetas: select, tabla
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




La zona horaria es GMT -6. Ahora son las 15:17.