现在数据是这样的
hid price rank
1 120 2
1 150 0
3 180 2
4 160 2
我要得到的结果如下
hid price rank
1 150 0
3 180 2
4 160 2
要求就是根据hid分组后 根据rank排序 取rank小的这条数据
sql语句如何写
------解决方案--------------------
- SQL code
select hid,price,rank from (select row_number()over(partition by hid order by rank) as rank1,* from tb) a where rank1=1