2017-10-13 80 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