Pregunta

Quiero contar dos columnas, pero necesito obtener los resultados de la primera columna en una fila.

SELECT country, COUNT(*)
FROM table1
GROUP BY country, type

Esta consulta me da

country    type     COUNT(*)
Canada     first    22
Canada     second   42
Canada     third    15
Australia  second   23
Australia  third    18

Pero necesito conseguir

country    type_first   type_second   type_third
Canada     22           42            15
Australia  23           18            0

Como quiero actualizar otra tabla con estos valores, y con esta estructura de fila, puedo actualizar la tabla de países fila por fila a medida que obtengo de la consulta anterior.

UPDATE country SET first=x, second=x, third=x

NOTA: type columna es ENUM con valores predefinidos.

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
No afiliado a dba.stackexchange
scroll top