SQL - 查找给定日期的重复记录数

时间:2014-07-21 17:58:50

标签: sql vb.net

我试图在给定的一天找到与提供的名称匹配的重复记录。我已经取得了接近目标的结果。但是此查询提供了所有行,而不是给定日期的重复行。

SELECT NameID, DateTime, ROW_Number() over(PARTITION BY NameID, CONVERT(NVARCHAR(25), DateTime, 111) ORDER BY DateTime ASC) DuplicateCount FROM Employee ORDER BY NameID

我只想返回给定日期内具有多个NameID条目的Employee的记录。这是在Visual Studios 2008中运行的。我通过数据读取器返回结果并从那里填充列表视图。

基本上,我只是缺少一个只返回DuplicateCount>记录的元素。 1.如果我能以这种方式限制结果,我认为这是一个胜利。

谢谢。

显示在给定日期具有多个记录的员工的NameID,count和最早日期。

"SELECT sTechID, MIN(Convert(NVARCHAR(25), sDateTime, 10)), COUNT(*) FROM LTI_Scout GROUP BY sTechID, CONVERT(NVARCHAR(25), sDateTime, 111) HAVING COUNT(*) > 1"

1 个答案:

答案 0 :(得分:2)

您是否考虑过将GROUP BY和HAVING条款结合使用?以下是一些可能让您入门的假代码:

Select NameID
FROM TableName
GROUP BY NameID, CONVERT(NVARCHAR(25), DateTime, 111)
HAVING COUNT(*) > 1