首页 > 解决方案 > 如何在 oracle sql 中再次使用 MAX 和 MIN 函数获取值?

问题描述

我使用此 SQL 查询得到以下结果:

SELECT Code,
 CASE
      WHEN MAX(running) = MIN(running) THEN MAX(running)
      ELSE MAX(running) - MIN(running)
 END
"RUNNING",
 date
FROM table
GROUP BY date;

结果:

Code    Running     Date
CC4       123       1/1/2018
CC4       12        1/11/2018
CC4       12000     4/2/2018
CC4       1000      4/10/2018

用户选择从日期 (1/1/2018) 到日期 (4/10/2018)

“代码”列中的代码相同。我想在上面的查询中再次使用 Max 和 Min 函数来只为“代码”列实现一个结果

如何在 oracle SQL 中实现这个目标?

标签: sqloracleoracle10g

解决方案


我想你只是想GROUP BY code

SELECT Code,
       (CASE WHEN MAX(running) = MIN(running) THEN MAX(running)
             ELSE MAX(running) - MIN(running)
        END) as "RUNNING"
FROM table
GROUP BY code;

推荐阅读