Cita: ¿Como puedo hacer una consulta que diga que hay 3 categorias?
¿En MySQL? De la misma forma que en cualquier DBMS, incluyendo Oracle, SQL Server, Postgre o lo que sea...
Simplemente cuenta uno por cada valor distinto que encuentre en una columna dada.
Pero si lo que quieres es contar cuántos hay de cada uno de los encontrados, debes hacer un COUNT(*) común y corriente, pero agrupando por el item que quieres diferenciar:
Que por otro lado también es una forma estandar del ANSI SQL.