Apache Derby从表中提取最大值

时间:2017-05-17 02:33:28

标签: sql apache derby

我有以下代码:

SELECT
  hora,
  SUM(cada_hora) AS suma_hora
FROM
  info
GROUP BY
  hora;

输出一个包含所有小时数(从0到23)的表及其各自的总和,如下所示;

Hora | Suma_hora
-----------------
0    | 100000
1    | 200000
2    | 150000
3    | 450000
4    | 120000
...  | ...

现在我要做的是从该表中提取Suma_hora的最大值的一行,并显示小时和相应的最大值。所以它看起来像这样:

Hora | Max_hora
-----------------
3    | 450000

我最接近我想要的答案就是这个,但不幸的是我不知道如何让它显示相应的小时(它只显示最大值,即Max_hora):

SELECT
  MAX(suma_hora) AS Max_hora
FROM
  (
    SELECT
      hora,
      SUM(cada_hora) AS suma_hora
    FROM
      info
    GROUP BY
      hora
  ) AS resultado;

非常感谢任何帮助!

注意:添加以下位会出错,因此不起作用:

SELECT
  hora, MAX(suma_hora) AS Max_hora
...

1 个答案:

答案 0 :(得分:2)

简单就像馅饼amigomío:)只是按照hora的顺序,并采取第一个,像这样:

SELECT
  hora,
  SUM(cada_hora) AS suma_hora
FROM
  info
GROUP BY
  hora
Order by suma_hora DESC Limit 1;