Мне нужно найти дубликаты записей (ID), которые имеют разные даты, однако дубликат должен быть в день до / после оригинала. По сути, я пытаюсь выяснить, использовались ли идентичные идентификаторы в другой день.
Я могу найти дубликаты, но не могу получить правильную часть даты, есть ли более простой способ выполнить вышеуказанное?
Я пробовал следующее, но чувствую, что слишком усложняю вещи:
SELECT *
FROM table
WHERE ID IN (
SELECT ID
FROM Table
Where [DATE] < DATEADD(day, +1, [DATE]) and ID=ID
GROUP BY ID
HAVING COUNT(*) > 1 )
ORDER BY Name,[DATE], ID ASC
Мои данные похожи на:
Name Date ID
A 3/30/2018 6.26
B 3/31/2018 6.26
C 4/1/2018 7.85
D 4/2/2018 11.88
E 4/3/2018 11.88
F 4/4/2018 9.48
Запрос должен принимать только имена AB и DE.
Любая помощь будет оценена.