MySQL MariaDB

MySQL tæller matchende poster med COUNT

MySQL tæller matchende poster med COUNT

Data redundans opstår af mange årsager. Flere af de komplicerede opgaver, du skal klare, når du arbejder med databasesystemer, forsøger at finde duplikatværdier. Til dette formål bruger vi COUNT () -aggregatmetoden. COUNT () -metoden returnerer summen af ​​rækker, der findes i en bestemt tabel. COUNT () -funktionen giver dig mulighed for at sammenfatte alle rækker eller kun rækker, der matcher den definerede betingelse. I denne vejledning lærer du at vide, hvordan du identificerer duplikatværdier for en eller måske flere MySQL-kolonner ved hjælp af COUNT (). COUNT () -metoden har følgende tre typer:

Gør det klart, at du har MySQL installeret på dit system. Åbn MySQL-kommandolinjeklientskallen, og indtast din adgangskode for at fortsætte. Vi vil se på nogle eksempler til at tælle de matchende værdier ved hjælp af COUNT () -metoden.

Vi har en tabel 'social' i vores skemadata '. Lad os kontrollere dens post via følgende forespørgsel.

>> VÆLG * FRA data.social;

MySQL-TÆLLING (*)

COUNT (*) -metoden bruges til at tælle antallet af rækker, der findes i tabellen eller tælle antallet af rækker efter den givne betingelse. For at kontrollere det samlede antal rækker i en tabel, 'social', prøv nedenstående forespørgsel. Vi har i alt 15 rækker i tabellen i henhold til resultatet.

>> VÆLG TÆLL (*) FRA data.social;

Få et glimt af COUNT (*) -metoden, mens du definerer nogle betingelser. Vi er nødt til at hente antallet af rækker, hvor brugernavnet er det samme som 'Mustafa'. Du kan se, at vi kun har 4 poster for dette navn.

>> VÆLG TÆLL (*) FRA data.social WHERE User = 'Mustafa';

For at hente den samlede sum af rækker, hvor brugernes hjemmeside er 'Instagram', skal du prøve nedenstående forespørgsel. Tabellen 'social' har kun 4 poster for hjemmesiden 'Instagram'.

>> VÆLG TÆLL (*) FRA data.social WHERE Website = 'Instagram';

At hente det samlede antal rækker, hvor 'Alder' er større end 18, er som følger:

>> VÆLG TÆLL (*) FRA data.social WHERE Alder> 18;

Lad os hente dataene fra kolonnerne 'Bruger' og 'Hjemmeside' fra en tabel, hvor brugernavnet starter med alfabetet 'M'. Prøv nedenstående instruktion på skallen.

>> VÆLG bruger, websted FRA data.social WHERE Bruger som 'M%';

MySQL COUNT (udtryk)

I MySQL bruges COUNT (udtryk) -metoden kun, når du vil tælle værdier, der ikke er nul, i kolonnens 'udtryk'. 'Udtrykket' ville være navnet på en hvilken som helst kolonne. Lad os tage et simpelt eksempel på det. Vi har kun talt de ikke-nulværdier i en kolonne 'Website', som er relateret til kolonnen 'Alder' med en værdi, der svarer til '25'. Se! Vi har kun 4 poster, der ikke er nul, for brugere med alderen '25', der bruger websteder.

>> VÆLG TÆLL (websted) FRA data.social WHERE Alder = 25;

MySQL COUNT (DISTNCT-udtryk)

I MySQL bruges metoden COUNT (DISTINCT expression) til at sammenfatte værdier, der ikke er nul, og forskellige værdier i kolonnen 'udtryk'. For at tælle et tydeligt antal ikke-nul-værdier i kolonnen 'Alder' har vi brugt nedenstående forespørgsel. Du finder 6 ikke-nul og forskellige optegnelser over kolonnen 'Alder' fra tabellen 'social'. Det betyder, at vi i alt har 6 personer med forskellige aldre.

>> VÆLG TÆLL (DISTINCT Age) FRA data.social;

MySQL-TÆLLING (HVIS (udtryk))

For stor vægt skal du flette COUNT () med flowkontrolfunktioner. Til at begynde med, for en del af udtrykket, der bruges i metoden COUNT (), kan du bruge funktionen IF (). Det kan være meget nyttigt at gøre dette for at give en hurtig opdeling af oplysningerne i en database. Vi tæller antallet af rækker med forskellige aldersbetingelser og deler dem i tre forskellige kolonner, hvilket kan siges som kategorier. For det første tæller COUNT (IF) de rækker, der er under 20 år, og gemmer dette antal i en ny kolonne med navnet 'Teenage'. Andet TÆLLING (HVIS) tæller rækkerne i alderen 20 til 30, mens det gemmes i en kolonne 'Ung'. For det tredje tæller de sidste rækkerne med aldre over 30 og gemt i en kolonne 'Moden'. Vi har 5 teenagere, 9 unge og kun 1 moden person i vores rekord.

>> VÆLG TÆLL (HVIS (Alder < 20,1,NULL)) 'Teenage', COUNT(IF(Age BETWEEN 20 AND  30,1,NULL)) 'Young', COUNT(IF(Age > 30,1, NULL)) 'Moden' FRA data.social;

MySQL COUNT (*) med GROUP BY-klausul

GROUP BY-sætningen er en SQL-instruktion, der bruger til grupperækker med de samme værdier. Det returnerer det samlede antal værdier, der findes i hver gruppe. For eksempel, hvis du vil kontrollere hver brugers nummer separat, skal du definere kolonnen 'Bruger' med GROUP BY-klausulen, mens du tæller poster for hver bruger med COUNT (*).

>> VÆLG bruger, TÆLL (*) FRA data.social GROUP BY bruger;

Du kan enten vælge mere end to kolonner, mens du udfører optælling af rækker sammen med GROUP BY-klausulen som følger.

>> VÆLG bruger, alder, websted, COUNT (*) FRA data.social GROUP BY Website;

Hvis vi vil tælle rækker, mens vi bruger WHERE-klausulen med nogle betingelser i den sammen med GROUP BY og COUNT (*), kan du også gøre det. Nedenstående forespørgsel henter og tæller posterne i kolonner: 'Bruger', 'Websted' og 'Alder', hvor webstedsværdien kun er 'Instagram' og 'Snapchat'. Du kan se, at vi kun har 1 post for begge websteder for forskellige brugere.

>> VÆLG bruger, hjemmeside, alder, COUNT (*) FRA data.social WHERE Website = 'Instagram' Eller Website = 'Snapchat' GROUP BY Website, Alder;

MySQL COUNT (*) med GROUP BY og ORDER BY-klausul

Lad os prøve GROUP BY- og ORDER BY-klausulerne sammen med COUNT () -metoden. Lad os hente og tælle rækkerne i tabellen 'social', mens vi arrangerer dataene i faldende rækkefølge ved hjælp af denne forespørgsel:

>> VÆLG bruger, hjemmeside, alder, COUNT (*) FRA data.social GRUPPE Efter alder BESTIL EFTER LAND (*) DESC;

Den nedenstående forespørgsel tæller først rækkerne og viser derefter de eneste poster, der har COUNT større end 2 i stigende rækkefølge.

>> VÆLG bruger, alder, COUNT (*) FRA data.social GRUPPE EFTER Alder MED TÆLLING (*)> 2 ORDRE EFTER LAND (*) ASC;

Konklusion

Vi har gennemgået alle de mulige metoder til at tælle de matchende eller duplikerede poster ved hjælp af COUNT () -metoden med forskellige andre klausuler.

Mus Føj musbevægelser til Windows 10 ved hjælp af disse gratis værktøjer
Føj musbevægelser til Windows 10 ved hjælp af disse gratis værktøjer
I de senere år har computere og operativsystemer udviklet sig meget. Der var et tidspunkt, hvor brugerne skulle bruge kommandoer til at navigere genne...
Mus Styr og administrer musebevægelse mellem flere skærme i Windows 10
Styr og administrer musebevægelse mellem flere skærme i Windows 10
Dual Display Mouse Manager lader dig kontrollere og konfigurere musebevægelse mellem flere skærme ved at bremse dens bevægelser nær grænsen. Windows 1...
Mus WinMouse giver dig mulighed for at tilpasse og forbedre musemarkørens bevægelse på Windows-pc
WinMouse giver dig mulighed for at tilpasse og forbedre musemarkørens bevægelse på Windows-pc
Hvis du vil forbedre standardfunktionerne for din musemarkør, skal du bruge freeware WinMouse. Det tilføjer flere funktioner, der hjælper dig med at f...