O
COUNT() está funcionando conforme o esperado. Quando você coloca um group by cláusula, a count() fornece o resultado para GROUP BY . Se você deseja obter a contagem de linhas em uma consulta que inclui group by , use-o como uma subconsulta. Algo como:
SELECT COUNT(*) FROM (SELECT * FROM `table`
GROUP BY `column1`) AS `a`