Рассмотрите эту структуру таблицы.
Key ID VISITDATE
1 1 2011-01-07
2 1 2011-01-09
3 2 2011-01-10
4 1 2011-01-12
5 3 2011-01-12
6 1 2011-01-15
7 2 2011-01-21
9 1 2011-02-28
10 2 2011-03-21
11 1 2011-01-06
Мне нужно получить все идентификаторы, Key, min (VisitDate), где VisitDate находится в промежутке в 10 дней? Если у вас есть два посещения в течение 10 дней, нужна одна строкачтобы быть там в результате.
Результат
KEY ID VISITDATE
11 1 2011-01-06
3 2 2011-01-10
5 3 2011-01-12
7 2 2011-01-21
9 1 2011-02-28
10 2 2011-03-21
Это можно сделать без самостоятельного объединения.У меня есть запрос, который самостоятельно соединяется с таблицей по ID и проверяет datediff.Есть ли лучшее решение? Можем ли мы использовать рекурсивный CTE здесь?
EDIT
Предпочитают решение, которое может использовать индекс по столбцу даты