uso sentencia operadores operador ejemplos consultas complejas mysql sql count

operadores - sentencia between mysql



SQL: ¿Cómo obtener el recuento de cada valor distinto en una columna? (1)

Tengo una tabla SQL llamada "publicaciones" que se ve así:

id | category ----------------------- 1 | 3 2 | 1 3 | 4 4 | 2 5 | 1 6 | 1 7 | 2

Cada número de categoría corresponde a una categoría. ¿Cómo voy a contar el número de veces que aparece cada categoría en una consulta de publicación en un sql ?

Como ejemplo, una consulta de este tipo podría devolver una matriz simbólica como esta: (1:3, 2:2, 3:1, 4:1)

Mi método actual es usar consultas para cada categoría posible, como: SELECT COUNT(*) AS num FROM posts WHERE category=# , y luego combinar los valores devueltos en una matriz final. Sin embargo, estoy buscando una solución que use solo una consulta.


SELECT category, COUNT(*) AS `num` FROM posts GROUP BY category