Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So rufen Sie Daten mit der Gesamtzahl mit einer MySQL-Einzelabfrage ab

Wenn Sie sich Ihr gewünschtes Ergebnis ansehen, ist dies eine bizarre Anforderung, da Sie alle zählen möchten (nicht für jeden Name ). Sie können dafür eine Unterabfrage verwenden:

SELECT `Name`, (SELECT COUNT(*) FROM myTable) as `COUNT`
FROM myTable

Oder wenn Sie für jeden Name zählen möchten versuchen Sie Folgendes:

SELECT `Name`, COUNT(*) AS `COUNT` 
FROM myTable 
GROUP BY `Name`;

BEARBEITEN:

Da Sie Ihre Frage aktualisiert haben, sollte Ihre Abfrage wie folgt aussehen:

SELECT `Name`,
(SELECT COUNT(*) FROM myTable WHERE TypeId = 1 GROUP BY TypeId) as `COUNT`
FROM myTable WHERE TypeId = 1;

Siehe dieses SQLFiddle