当前位置: 代码迷 >> SQL >> SQL取反复数据保留ID最小的一条记录
  详细解决方案

SQL取反复数据保留ID最小的一条记录

热度:85   发布时间:2016-05-05 12:22:13.0
SQL取重复数据保留ID最小的一条记录
select whir$3136_f3914,whir$3136_f3916,whir$3136_lx,whir$3136_f3915
  from whir$3136 a
where  (a.whir$3136_f3916,
        a.whir$3136_f3914,
        a.whir$3136_f3915,
        a.whir$3136_lx) in (select whir$3136_f3916,
                                   whir$3136_f3914,
                                   whir$3136_f3915,
                                   whir$3136_lx
                              from whir$3136
                             group by whir$3136_f3916,
                                      whir$3136_f3914,
                                      whir$3136_f3915,
                                      whir$3136_lx
                            having count(*) > 1)
   and rowid not in (select min(rowid)
                       from whir$3136
                      group by whir$3136_f3916,
                               whir$3136_f3914,
                               whir$3136_f3915,
                               whir$3136_lx
                     having count(*) > 1)
   and whir$3136_date = '2011-12-27'
  相关解决方案