SQL-запрос для поиска самой последней группы записей

У меня есть история записей (несколько записей на обновление с одинаковой датой и временем), которые разделяют.IdString

Я хочу запрос, чтобы определить, какие из этих записей являются частью самой последней группы обновлений.

Этот запрос покажет мнеодин из записей, имеющих самую последнюю дату обновления, нодля каждого раздела мне нужны все записи с этой максимальной датой.

;with cte as(
select ROW_NUMBER() over (partition by IdString order by UpdateDate desc) as [rn], *
from MyTable
)
select  CASE WHEN (cte.rn = 1) THEN 0 ELSE 1 END [IsOld], *
from MyTable m
inner join cte on cte.RecordId= m.RecordId

Кто-нибудь, пожалуйста, помогите мне определить подходящий запрос?

РЕДАКТИРОВАТЬ: образец

(IsOld is the desired calculated value)

IsOld RecordId  IdString  UpdateDate
1         1     ABC 2011-06-16 
1         2     ABC 2012-05-30 
1         3     ABC 2008-12-31 
0         4     ABC 2012-06-08 
1         5     ABC 2011-01-16 
0         6     ABC 2012-06-08 
1         7     ABC 2012-06-07 
1         8     XYZ 2001-01-16
1         9     XYZ 2013-01-30
0         10    XYZ 2001-01-31
1         11    XYZ 2013-06-01
1         12    XYZ 2001-05-04
0         13    XYZ 2013-01-30

Ответы на вопрос(2)

Ваш ответ на вопрос