• Here is my shot at the solution.

    CREATE TABLE #Temp

    (TNID INT, TN BIGINT);

    INSERT INTO #Temp

    SELECT 3011170, 4402787100

    UNION ALL SELECT 3011170, 4402787101

    UNION ALL SELECT 3011170, 4402787102

    UNION ALL SELECT 3011170, 4402787103

    UNION ALL SELECT 3011171, 4402787104

    UNION ALL SELECT 3011171, 4402787105

    UNION ALL SELECT 3011175, 4402787118

    UNION ALL SELECT 3011175, 4402787119

    UNION ALL SELECT 3011175, 4405165555

    UNION ALL SELECT 3011175, 4405165556

    UNION ALL SELECT 3011175, 4405165557

    UNION ALL SELECT 3011175, 4405165558

    UNION ALL SELECT 3011175, 4409447976;

    with rCTE as (

    select

    row_number() over (order by (select null)) rn,

    t1.TNID,

    t1.TN

    from

    #Temp t1

    left outer join #Temp t2

    on t1.TNID = t2.TNID and t1.TN = t2.TN + 1

    where

    t2.TNID is null

    union all

    select

    rn,

    t1.TNID,

    t1.TN

    from

    #Temp t1

    inner join rCTE t2

    on t1.TNID = t2.TNID and t1.TN = t2.TN + 1

    )

    select TNID, min(TN) TN1, max(TN) TN2 from rCTE group by rn, TNID order by rn,TNID;

    go

    drop table #Temp;

    go