我有一堆数据,假如下面的样子:
字段1,字段2
1->a
2->b
3->c
1->d
4->e
3->f我现在要读出来1、2、3、4以及对应的字母,规则是如果发现重复,用最近的替换之前的,也就是得到这样的结果:
1->d
2->b
3->f
4->e
上面的这些数我只能从游标中获得,用来构造动态的sql语句。请大家帮我想象办法!多谢!注:留第一个值对也可以。
字段1,字段2
1->a
2->b
3->c
1->d
4->e
3->f我现在要读出来1、2、3、4以及对应的字母,规则是如果发现重复,用最近的替换之前的,也就是得到这样的结果:
1->d
2->b
3->f
4->e
上面的这些数我只能从游标中获得,用来构造动态的sql语句。请大家帮我想象办法!多谢!注:留第一个值对也可以。
(
select 字段1,字段2 ,row_number(partition by 字段1 order by 字段1 desc) row_number
from table
) t
where t.row_number = 1
ps:数据结构MAP可以说是中“值对”,对于oracle,构造“值对”还是相对容易的。
建议lz,多从sql角度出发思考问题,询问问题。
一方面是因为侧重点不同,一方面也因为领域和开发理念的不同。
当然也有实现方法的不同。
楼主的疑问就属于最后一种,oracle也是可以实现楼主的要求的。
方法的话,比如说临时表的更新(key,val)这不就是map吗?
from table
group by 字段1