Vous devez avoir un ensemble de lignes contenant toutes les valeurs possibles de vos compétences.
MySQL
manque un moyen de le faire, vous devrez donc le générer d'une manière ou d'une autre.
Si vous avez un tel jeu de résultats, lancez simplement :
SELECT skill, COUNT(*)
FROM (
SELECT 'Install' AS skill
UNION ALL
SELECT 'Configure' AS skill
UNION ALL
SELECT 'Setup' AS skill
UNION ALL
SELECT 'Blah' AS skill
) s
JOIN users u
ON find_in_set(s.skill, u.sets)
GROUP BY
s.skill
Puisque vous avez mentionné que vous avez vos compétences dans un tableau séparé, utilisez ce tableau :
SELECT skill, COUNT(*)
FROM skills s
JOIN users u
ON find_in_set(s.skill, u.sets)
GROUP BY
s.skill
Ceci, cependant, ne correspondra jamais aux fautes de frappe, elles seront simplement ignorées.