数据查重

可以参考:https://www.cnblogs.com/firstdream/p/5826238.html

--1.表号重复的记录:表号重复的记录: 这个会查询出重复的记录,筛选掉了本身(001,001  两条记录重复了,则只查询出001,另一条就筛选掉了)
SELECT * from 
(   SELECT ROW_NUMBER() OVER (PARTITION BY RE.MES_NAMEPLATE_CODE  ORDER BY RE.CREATE_DT desc) A ,
    re.PILENO,re.BOXNO,re.MES_MOVEMENT_CODE,IS_DELETE,re.MES_NAMEPLATE_CODE
    from WMS_ENTRY_WAREHOUSE_METER AS RE WITH(NOLOCK) 
    where  IN_ORDER_NO IN ('OD202111150004') and IS_DELETE=0  
) AS  BC WHERE BC.A>=2


--2.查询重复的记录:按照表号分组
select PILENO,BOXNO,MES_NAMEPLATE_CODE
from WMS_ENTRY_WAREHOUSE_METER with(nolock)
where in_order_no in ('OD202111150004') and IS_DELETE=0  
group by PILENO,BOXNO,MES_NAMEPLATE_CODE
having count(MES_NAMEPLATE_CODE)>=2


--3.查询重复的记录
select * from WMS_ENTRY_WAREHOUSE_METER where MES_NAMEPLATE_CODE in (
select MES_NAMEPLATE_CODE from WMS_ENTRY_WAREHOUSE_METER
where in_order_no in ('OD202111150004') and IS_DELETE=0 
group by MES_NAMEPLATE_CODE
having count(MES_NAMEPLATE_CODE) > 1
)

posted @ 2021-12-27 19:10  朕在coding  阅读(146)  评论(0编辑  收藏  举报