一、原始数据(默认会生成一个 rownum 的序列,如下图的第一列)

select t.* from ZD_DIC t  where t.zdlx = '人员类型'

Oracle 去重并显示所有列数据 随笔 第1张

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

 

二、先分组,再给组内的内容进行排序

select t.*, row_number() over(partition by MC order by rownum) rn from ZD_DIC t where t.zdlx = '人员类型'

Oracle 去重并显示所有列数据 随笔 第2张

 

三、选择每组重复数据的第一条

select * from (
    select t.*, row_number() over(partition by MC order by rownum) rn from ZD_DIC t where t.zdlx = '人员类型'
) where rn = 1

Oracle 去重并显示所有列数据 随笔 第3张

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄