查询仅返回具有另一个字段的字段组的最大值的记录

时间:2014-03-25 16:14:53

标签: sql ms-access

我做了一个具有以下结果的查询:

month     OP#     JOB #   SumProd   SumScrap    
1     10      9870    2105      21  
1     20      9870    2018      3   
1     30      9870    2018      0   
1     10      8115    14581     88  
1     20      8115    14569     35  
1     10      8114    14581     90  
1     20      8114    16180     268 

我想得到的结果是将此结果过滤为每个JOB的最高OP#...

我试过

SELECT month, Max(OP#) as maxOP, JOB # ... FROM ... GROUP BY [JOB #]...

但是在访问中,它不起作用......我很感激,如果有人能帮助我......我在网上等待......

1 个答案:

答案 0 :(得分:0)

如果访问支持派生表,则此类查询将为您提供所需的内容。

select yourfields
from sometables
join (
select field1, max(field2) maxvalue
from table1
where whatever
group by field1 
) temp on table1.field1 = temp.field1 and table1.field2 = maxvalue
where whatever

确保两个where子句尽可能相似。