Agarrando la fila con el valor más alto de cada grupo?

Tengo datos que se ven así:

Table Group: "A" , Color: "Blue", Count: "400" Group: "A" , Color: "Green", Count: "3" Group: "A" , Color: "Yellow", Count: "6" Group: "A" , Color: "Red", Count: "1" Group: "B" , Color: "Purple", Count: "243" Group: "B" , Color: "Green", Count: "2" Group: "B" , Color: "Yellow", Count: "7" 

¿Cómo puedo consultar estos datos para get para cada grupo el color más popular (por recuento)? Entonces el resultado sería así:

 Result Group: "A", Color: "Blue" Group: "B", Color: "Purple" 

 SELECT Group, Color FROM MyTable t INNER JOIN (SELECT Group, Max(CAST(Count as int)) as Ct FROM MyTable GROUP BY Group) Sub ON sub.group = t.group AND sub.ct = t.count 

Como un aparte, no nombre un campo GROUP , o COUNT . Son palabras key y provocarán dolores de cabeza y angustia.

Esto también debería funcionar:

 SELECT t.Group, t.Color, t.Count FROM (SELECT Group, Color, Count, ROW_NUMBER() OVER(PARTITION BY Group ORDER BY CAST(Count AS INT) DESC) AS num FROM Table) AS t WHERE t.num = 1