同一sql查询中的几个条件(具有和最小)

问题描述 投票:0回答:1

我有一个包含这些变量的表,我想选择VALUE的总和大于1000,同时MONTH为最小值的行

|CLIENT     |MONTH         |VALUE
|1          |1             |500            
|1          |2             |1050
|1          |3             |1100

结果应该是这个:

|CLIENT|MONTH|VALUE
|1     |2    |1050

是否可以仅在一个查询中完成?

我的尝试:

       SELECT 
       client,            
       SUM(value) AS SUM_of_value, 
       MIN(month) AS MIN_of_month, 

      FROM mytable 
      GROUP BY 1
      having SUM_of_value>1000;
sql having
1个回答
0
投票

如果需要一行,则可以使用order by

select t.*
from mytable
where value > 1000
order by month
fetch first 1 row only;

我不确定您的查询为什么引用“价值总和”,因为问题中的数据每月只有一个值。

© www.soinside.com 2019 - 2024. All rights reserved.