【问题标题】:Apache Derby extracting the maximum value from a tableApache Derby 从表中提取最大值
【发布时间】:2017-05-17 02:33:28
【问题描述】:

我有以下代码:

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
...

【问题讨论】:

    标签: sql derby


    【解决方案1】:

    简单如馅饼 amigo mio :) 只需按 hora 订购,然后拿第一个,如下所示:

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

    【讨论】:

    • 太棒了,成功了!我很快就会接受你的回答:D gracias
    • 我一直喜欢帮助! :)
    猜你喜欢
    • 2019-04-04
    • 1970-01-01
    • 1970-01-01
    • 2021-06-20
    • 1970-01-01
    • 2013-04-09
    • 1970-01-01
    • 2019-11-22
    • 1970-01-01
    相关资源
    最近更新 更多