SQL рекурсивный cte путем сравнения между строками
Привет, не могли бы вы помочь решить приведенный ниже сценарий, мне нужно выполнить обновление только после сравнения всех строк, связанных с custid 100, и решить, у кого последняя дата (100 или 400), этот идентификатор должен оставаться активным, мои существующие обновления обновляются на основе обновлений. на одном ряду сравнения. Не могли бы вы помочь, как мы можем сделать это с помощью рекурсии и запустить обновление в том же запросе?
ТАБЛИЦА
ID CustID MCustID Date MDate
1 100 200 2017-01-10 2017-01-15
2 100 300 2017-01-10 2017-01-07
3 100 400 2017-01-10 2017-01-21
КОД
update A
set active = 0
from Cust A inner join tblMatch M
on A.CustomerID = case when M.Date < M.MDate then M.CustId else M.MCustId end