• How about this one correct me if i am wrong

    ;WITH C AS

    (

    SELECT *,ROW_NUMBER() OVER(PARTITION BY Status ORDER BY Product) AS Rn FROM #TestData

    ),

    C1 AS

    (

    SELECT *,MIN(Rn)OVER(PARTITION BY Status) MinRn FROM C

    )

    SELECT Product,Status FROM C1 WHERE Rn=MinRn

    ORDER BY Product ASC