oracle每个表,多有一个rowid字段,如果我采用了分组group by语句,出来的数据,我要反推回去得到表的ROWID,有什么办法可以得到。
其实就是很简单
select rowid,field_a,field_b,max(xx)
from tableX
group by field_a,field_b
--如何能做到这样分组。
------解决思路----------------------
rowid 在group 的时候是不能加在 select列表中的, 而且返回的每一行数据可能包含多个rowid ,只能这样做,就是自定义一个聚集函数,返回将多个rowid 用分隔符连接起来的字符串。比如wm_concat这个函数
select wm_concat(rowid),field_a,field_b,max(xx) from tableX group by field_a,field_b