• DECLARE @temptbl AS TABLE

    (

    Field1 INT,

    Field2 INT,

    Field3 VARCHAR(20),

    Field4 VARCHAR(10)

    )

    Insert into @temptbl

    select 32,375,'abc-xyz','A' UNION ALL

    select 32,379,'xyz-efg','A' UNION ALL

    select 55,405,'abc-xyz','B' UNION ALL

    select 55,407,'xyz-efg','B' UNION ALL

    select 132,908,'abc-xyz','C' UNION ALL

    select 132,999,'xyz-efg','C' UNION ALL

    select 152,800,'abc-xyz','D' UNION ALL

    select 152,850,'xyz-efg','D' UNION ALL

    select 155,900,'abc-xyz','E' UNION ALL

    select 156,925,'abc-xyz','F' UNION ALL

    select 157,935,'abc-xyz','G'

    --select * from @temptbl

    select * from

    (

    select *,ROW_NUMBER() OVER(PARTITION BY field1 ORDER BY field2 DESC) Rowno FROM @temptbl

    ) T

    where T.Rowno=1