2017-03-22 45 views
0

表A:如何在Oracle查詢的結果比表的分鐘(值)值

row_id  row_num 
3488  1 
3488  2 
3488  3 
4523  1 
4523  2 
8783  1 
9999  2 
9999  3 
9999  4 

我如何得到我的表的結果,其中ROW_NUM應大於最小值row_num? [例如ROW_NUM>分鐘(ROW_NUM)]

預期的結果

row_id  row_num 
3488  2 
3488  3 
4523  2 
9999  3 
9999  4 
+0

你到目前爲止試過了什麼?你可以發佈命令嗎? – JanTheGun

回答

1

使用min()超過()

select row_id, row_num 
from (
    select row_id, row_num, min(row_num) over() rm -- probably add partition by row_id 
    from myTable 
) t 
where row_num > rm 
0

使用ROWNUMBER使用分區通過的ROWIDs進行分區,然後得到的rownum> 1

;with cte 
as 
(select row_id,row_num, 
row_number() over (partition by row_id order by row_num) as rownum 
from #temp 
) 
select row_id,row_num from cte where rownum>1 
+0

雖然這段代碼可能會回答這個問題,但提供關於如何解決問題和/或爲什麼解決問題的附加上下文會提高答案的長期價值。 –

+0

@DonaldDuck:代碼本身回答,沒有太多的解釋提供關於這個code.I會養成添加一些解釋的習慣 – TheGameiswar

相關問題