En regardant le résultat souhaité, il s'agit d'une exigence bizarre car vous voulez que tout compte (pas pour chaque Name
). Vous pouvez utiliser une sous-requête pour cela :
SELECT `Name`, (SELECT COUNT(*) FROM myTable) as `COUNT`
FROM myTable
Ou si vous voulez compter pour chaque Name
essayez ceci :
SELECT `Name`, COUNT(*) AS `COUNT`
FROM myTable
GROUP BY `Name`;
MODIF :
Comme vous avez mis à jour votre question, votre requête devrait ressembler à ceci :
SELECT `Name`,
(SELECT COUNT(*) FROM myTable WHERE TypeId = 1 GROUP BY TypeId) as `COUNT`
FROM myTable WHERE TypeId = 1;