将ts_b_crbt_cdr表,在d_cttime >= TO_DATE(substr('?',1,19), 'YYYY/MM/DD HH24:MI:SS')
and d_cttime < TO_DATE(substr('?',1,19), 'YYYY/MM/DD HH24:MI:SS')
时间段内的数,按照s_billno, s_crbtid ,n_total_fee ,d_start_time分组,并且在组内按照 s_billno 排序,并按照正序标记为1,2,3.......(恩.....,一般都是组内排序啊,你这个怎么分完组之后还按照分组的一个字段进行排序呢?有点问题。)
在ts_b_crbt_cdr表中删除rownum上述rownum标记大于1的行。
不过我还是感觉那个分组和排序有点问题。
row_number 是生成序号,order by s_billno desc按这个降序排列。partion by 分组
在d_cttime >= TO_DATE(substr('?',1,19), 'YYYY/MM/DD HH24:MI:SS')
and d_cttime < TO_DATE(substr('?',1,19), 'YYYY/MM/DD HH24:MI:SS')这个日期范围内,删除以这个s_billno, s_crbtid ,n_total_fee ,d_start_time分组的重复数据
并且删除时保留s_billno 这个最大的
删除某个时间段内, (s_billno, s_crbtid ,n_total_fee ,d_start_time等)信息重复的所有数据。
用row_number对重复数据做了位排列,就是将重复的数据用1、2、3..的标记标记出来了
a 1
a 2
a 3
b 1
b 2
c 1
...