sql >> Database teknologi >  >> RDS >> Mysql

Sådan hentes data med samlet antal ved hjælp af mysql enkelt forespørgsel

Når man ser på dit ønskede resultat, er dette et bizart krav, da du ønsker, at alt tæller (ikke for hvert Navn ). Du kan bruge underforespørgsel til det:

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

Eller hvis du vil tælle for hvert navn prøv dette:

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

EDIT:

Efterhånden som du har opdateret dit spørgsmål, skulle din forespørgsel være sådan her:

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

Se denne SQLFiddle



  1. Hvad er den maksimale rækkevidde af varchar i MySQL?

  2. Transponere en række til kolonner med MySQL uden at bruge UNIONS?

  3. Sådan trækker du minutter fra en dato-tidsværdi i MariaDB

  4. Brug af store parametre til Microsoft SQL-lagret procedure med DAO