2017-10-13 51 views
0

我有几个表需要连接,而这些表又需要连接到此图表中的图表的结果集,每个部分都有多个图号和修订。我需要最大的图号,然后是零件的最大修订号。化合物最大查询

我知道我可以做到这一点:

select part, max(dwg_num) 
from drawingtable 
group by part 

,然后嵌入这是另一个查询来获取最大的修订,然后将其加入到自己拿到其他领域,但是这一切似乎有点混乱,我想知道是否有人有更好的方式做任何想法

+3

你的问题还不清楚。请包括表格结构和样本数据。 –

回答

1

使用ROW_NUMBER来排名您每个部分的可绘制记录,并保持最佳排名。

select * 
from 
(
    select 
    drawingtable.*, 
    row_number() over (partition by part order by dwg_num desc, rev_num desc) as rn 
    from drawingtable 
) ranked 
where rn = 1; 
+0

这正是我期待的辉煌!它会在每种情况下返回正确的图纸编号和修订版,但不会有任何重复 – JamesP