SQL从where子句获取最大值+1

时间:2018-10-19 15:34:31

标签: sql oracle11g

bool containsAny = list.Cast<Object>().Any();

这部分几乎是完整的查询。我想显示max(rework_seq)+1作为带有prod_result表中检验日期的最终返工序列。 rework_history表中的enrl_date是rework_history表中的检查日期,并且prod_result表中不存在该值。我必须将此日期用于日期搜索范围,因为我必须在这段时间内获得所有带有返工历史记录的A级成绩。有时,返工到最后一个A年级不会在同月发生,因此我无法使用prod_result表中的检查日期。哦..这仅适用于具有返修历史记录的A级产品。

请帮助。

这应列出所有具有返工历史记录且成绩为A级的result_id,并显示max(rework_seq)+ 1与result_id匹配且检查日期在2018-06-01 7 am至2018-07-01 7 am之间。

1 个答案:

答案 0 :(得分:0)

您可以通过product_id在子查询上为最大rework_seq组使用JOIN

 select t.last_rework_seq + 1 
 from tableA a
 inner join  ( 
    select product_id,  max(b.rework_seq)  last_rework_seq
    from  table b 
    group by product_id
) t on  a.product_id =t.product_id