row_number() over(partition by xxxx1 order by xxxx2)rn 语法作用先对xxxx1进行分组然后在根据xxxx2字段进行排序,每一组进行排序,使用where rn = 1作为条件时,可以取得每一个分组的第一条。
wm_concat排序问题,wm_concat会导致排序失效,解决方案是使用listagg(y)within group(order by x)来解决,实测有效;
oracle去重,delete from a where rowid not in min(rowid) from a where group by a.b; 分组查出rowid最小或者最大的一位,把其他的rowid的数据删除,达到删除重复数据的作用。
苦啊,已经写了一个月的sql语句了。。。