Sql 如何在Oracle中查询值大于表的最小值(value)的结果
表A:Sql 如何在Oracle中查询值大于表的最小值(value)的结果,sql,oracle,plsql,Sql,Oracle,Plsql,表A: 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>min(row_num)] 预期结果 row_id row_num 3488 2 3488 3
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>min(row_num)]
预期结果
row_id row_num
3488 2
3488 3
4523 2
9999 3
9999 4
使用with Partition按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
在()上使用min()
到目前为止你试过什么?您可以发布这些命令吗?虽然这段代码可能会回答这个问题,但提供有关它如何和/或为什么解决这个问题的附加上下文将提高答案的长期价值。@DonaldDuck:代码本身会回答,但对这段代码没有太多解释。我会习惯于添加一些解释
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