Du kan använda följande fråga:
SELECT RaidNo, OutComeID, RN,
CASE
WHEN OutComeID <> 16 THEN 0
ELSE ROW_NUMBER() OVER (PARTITION BY OutComeID, grp ORDER BY RN)
END AS Result
FROM (
SELECT RaidNo, OutComeID, RN,
RN - ROW_NUMBER() OVER (PARTITION BY OutComeID ORDER BY RN) AS grp
FROM mytable) AS t
ORDER BY RN
Fält grp identifierar delar (även kallade öar) av på varandra följande poster med samma OutComeID värde. Den yttre frågan använder grp för att räkna upp varje post som tillhör en '16' skiva. Posterna som hör till de andra segmenten tilldelas värdet 0 .