Sql server sql中存在UING来查找重复项,有没有更干净的方法?
请参阅下面的脚本以在SQL Server DB中查找重复项。有没有更干净的方法Sql server sql中存在UING来查找重复项,有没有更干净的方法?,sql-server,exists,Sql Server,Exists,请参阅下面的脚本以在SQL Server DB中查找重复项。有没有更干净的方法 select itemnum from matusetrans a where exists (select null from matusetrans b where a.itemnum = b.itemnum and a.actualdate = b.actualdate and a.
select itemnum
from matusetrans a
where exists (select null
from matusetrans b
where a.itemnum = b.itemnum
and a.actualdate = b.actualdate
and a.matusetransid != b.matusetransid
and (a.rotassetnum = b.rotassetnum
or (a.rotassetnum is null and b.rotassetnum is null))
and a.quantity = b.quantity)
group by itemnum
你可以试试:
SELECT itemnum
FROM matusetrans
GROUP BY [ColumnNames]
HAVING
COUNT(*) > 1
你可以试试:
SELECT itemnum
FROM matusetrans
GROUP BY [ColumnNames]
HAVING
COUNT(*) > 1
假设您想在表中找到重复的itemnum,请使用下面的查询
SELECT itemnum
FROM matusetrans
GROUP BY [ItemNum]
HAVING COUNT(ItemNum) > 1
使用HAVING COUNT(*)>1
可能会得到结果,因为如果存在任何Datetime
列,如order Datetime,则所有列都是不同的,而order Datetime通常随记录而变化
谢谢,
Sree假设要在表中查找重复的itemnum,请使用下面的查询
SELECT itemnum
FROM matusetrans
GROUP BY [ItemNum]
HAVING COUNT(ItemNum) > 1
使用HAVING COUNT(*)>1
可能会得到结果,因为如果存在任何Datetime
列,如order Datetime,则所有列都是不同的,而order Datetime通常随记录而变化
谢谢,
Sree另一种可能性(但不一定是“清洁剂”)可能是
另一种可能性(但不一定“更干净”)可能是
请明确定义“重复项”。您指的是行中所有列都匹配的两条记录吗?您好,Mfusiki,是的,代码中的条件匹配且计数大于1时重复。请参考此线程:使用此线程,我无法识别唯一的itemnum。正如@Mfusiki建议的,请使用GroupBy&让ClausePlease明确定义“重复项”。您是指行中所有列都匹配的两条记录吗?您好,Mfusiki,是,代码中的条件匹配且计数大于1时重复。请参考此线程:使用此线程,我无法识别唯一的itemnum。正如@Mfusiki建议的,使用GroupBy&Having子句