Я пытаюсь определить группы записей, которые идут после других групп. У нас есть участники, которые покинули одну группу и вернулись, но не должны были быть возвращены в другую подгруппу.
Я пытаюсь определить месяцы, когда участник вернулся - после первоначальной регистрации. Я пытался сгруппировать их различными способами (Row_Num, Rank, GROUPing), но не понял этого.
Я хочу указать выделенные месяцы, когда участник становится правомочным после того, как он не отвечает критериям. Чтобы сделать его более сложным, некоторые участники начинают как не имеющие права (0, 1, 0, 1). Я хочу определить вторую и последующие группы, в которых Enrolled = 1 по месяцам - возможно, добавив дополнительный столбец для группировки изменений, таких как столбец в СИНИМ ниже.

Вот некоторые примеры данных. Будем благодарны за любые другие предложения относительно того, как сделать эту работу.
CREATE TABLE #TEMP(MEMBER VARCHAR(20), MDATE DATE, ELIGIBLE INT, ENROLLED INT)
INSERT INTO #TEMP ( MEMBER, MDATE, ELIGIBLE, ENROLLED )
SELECT 'JUDY' AS MEMBER, '2017-01-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-02-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-03-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-04-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-05-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-06-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-07-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-08-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-09-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-10-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-11-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2017-12-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-01-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-02-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-03-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-04-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-05-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-06-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-07-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-08-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-09-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-10-01' AS MDATE, 0 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-11-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2018-12-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2019-01-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2019-02-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'JUDY' AS MEMBER, '2019-03-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-01-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-02-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-03-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-04-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-05-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-06-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-07-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-08-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-09-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-10-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-11-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2017-12-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-01-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-02-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-03-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-04-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-05-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-06-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-07-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-08-01' AS MDATE, 0 AS ELIGIBLE, 0 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-09-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-10-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-11-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2018-12-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2019-01-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2019-02-01' AS MDATE, 1 AS ELIGIBLE, 1 AS ENROLLED UNION
SELECT 'FRANK' AS MEMBER, '2019-03-01' AS MDATE, 1 AS ELIGIBLE, 0 AS ENROLLED