Используйте СЛУЧАЙ внутри СЧЕТА.
В случае ELSE подразумевается NULL, который игнорируется COUNT(column)
SELECT
u.*,
count(CASE WHEN c.status = 'A' THEN c.id END) as total_active,
COUNT(c.id) AS total
FROM
`users` u
LEFT JOIN
`classifieds` c ON c.user_id = u.id
GROUP BY
u.id -- fix this
Кроме того, стандартный SQL предназначен для группировки или объединения столбцов: расширения MySQL GROUP BY могут давать ошибочные результаты, поскольку механизм угадывает что вы хотите.
Попробуйте этот запрос с SET SQL_MODE = 'ONLY_FULL_GROUP_BY'
, чтобы понять, что я имею в виду ...