MySQL Count vastavad kirjed COUNT -ga

Mysql Count Matching Records With Count



Andmete koondamine toimub mitmel põhjusel. Mitmed keerulised ülesanded, millega peaksite andmebaasisüsteemidega töötades toime tulema, püüavad avastada dubleerivaid väärtusi. Sel eesmärgil kasutame liitmismeetodit COUNT (). Meetod COUNT () tagastab konkreetses tabelis olevate ridade summa. Funktsioon COUNT () võimaldab teil liita kõik read või ainult read, mis vastavad määratletud tingimusele. Selles juhendis saate teada, kuidas COUNT () abil tuvastada ühe või võib -olla mitme MySQL -i veeru duplikaatväärtused. Meetodil COUNT () on järgmised kolm tüüpi:

  • COUNT (*)
  • COUNT (avaldis)
  • COUNT (DISTINCT avaldis)

Veenduge, et teie süsteemi on installitud MySQL. Avage MySQL käsurea kliendi kest ja sisestage jätkamiseks oma parool. Vaatame mõningaid näiteid sobivate väärtuste loendamiseks COUNT () meetodi abil.









Meie skeemis „andmed” on tabel „sotsiaalne”. Kontrollime selle kirjet järgmise päringu kaudu.



>> VALI * Alates andmed .Sotsiaalne;





MySQL COUNT (*)

Meetodit COUNT (*) kasutatakse tabelis olevate ridade arvu loendamiseks või ridade arvu loendamiseks vastavalt antud tingimusele. Tabeli ridade koguarvu kontrollimiseks proovige allolevat päringut „sotsiaalne”. Kokku on tabelis 15 tulemust.

>> VALI COUNT (*) Alates andmed .Sotsiaalne;



Heitke pilk COUNT (*) meetodile, määratledes mõned tingimused. Peame tooma ridade arvu, kus kasutajanimi on sama kui Mustafa. Näete, et meil on selle nime jaoks ainult 4 kirjet.

>> VALI COUNT (*) Alates andmed .Sotsiaalne KUS Kasutaja ='Mustafa';

Ridade kogusumma hankimiseks, kus kasutajate veebisait on Instagram, proovige allpool esitatud päringut. Tabelis 'sotsiaalne' on veebisaidi 'Instagram' kohta ainult 4 kirjet.

>> VALI COUNT (*) Alates andmed .Sotsiaalne KUS Veebisait='Instagram';

Ridade, mille vanus on suurem kui 18, hankimiseks toimige järgmiselt.

>> VALI COUNT (*) Alates andmed .Sotsiaalne KUS Vanus> 18;

Toome veergude „Kasutaja” ja „Veebisait” andmed tabelist, kus kasutajanimi algab tähestikuga „M”. Proovige kesta alltoodud juhiseid.

>> VALI Kasutaja ,Veebisait Alates andmed .Sotsiaalne KUS Kasutaja meeldib „M%';

MySQL COUNT (avaldis)

MySQL-is kasutatakse meetodit COUNT (avaldis) ainult siis, kui soovite loendada veeru „avaldis” mitte-nullväärtusi. Väljend oleks mis tahes veeru nimi. Võtame selle kohta lihtsa näite. Oleme loendanud ainult veeru „Veebisait” nullväärtusi, mis on seotud veeru „Vanus” väärtusega „25”. Näe! Veebisaite kasutavate kasutajate vanuses „25” on meil ainult neli mitte-nullkirjet.

>> VALI COUNT (Veebisait) Alates andmed .Sotsiaalne KUS Vanus= 25;

MySQL COUNT (DISTNCT avaldis)

MySQL-is kasutatakse meetodit COUNT (DISTINCT avaldis), et liita mitte-nullväärtused ja veeru „avaldis” erinevad väärtused. Veerus „Vanus” oleva selge arvu mitte-nullväärtuste lugemiseks oleme kasutanud allolevat päringut. Tabelist „sotsiaalne” leiate 6 veergu „Vanus” mitte-tühist ja selget kirjet. See tähendab, et meil on kokku 6 erinevas vanuses inimest.

>> VALI COUNT ( DISTINCT Vanus) Alates andmed .Sotsiaalne;

MySQL COUNT (IF (avaldis))

Suure rõhuasetuse saamiseks peaksite COUNT () ühendama voolu juhtimise funktsioonidega. Alustuseks võite kasutada COUNT () meetodis kasutatava avaldise osa jaoks funktsiooni IF (). See võib olla väga kasulik andmebaasis oleva teabe kiireks jaotamiseks. Loendame erinevate vanustingimustega ridade arvu ja jagame need kolme erinevasse veergu, mida võib öelda kategooriatena. Esiteks loendab COUNT (IF) alla 20 -aastased read ja salvestab selle loendi uude veergu nimega „Teenage”. Teine COUNT (IF) loeb ridasid vanuses 20–30, salvestades need veergu „Young”. Kolmandaks loeb viimane ridu, mille vanus on üle 30 ja mis on salvestatud veergu „Täiskasvanud”. Meie arvestuses on 5 teismelist, 9 noort ja ainult üks küps inimene.

>> VALI COUNT ( KUI (Vanus< kakskümmend,1, NULL ))'Teismeline', COUNT ( KUI (Vanus VAHEL kakskümmend JA 30,1, NULL ))'Noored', COUNT ( KUI (Vanus> 30,1, NULL ))'Küps' Alates andmed .Sotsiaalne;

MySQL COUNT (*) klausliga GROUP BY

Lause GROUP BY on SQL -käsk, mida kasutatakse samade väärtustega rühmaridade jaoks. See tagastab igas rühmas olevate väärtuste koguarvu. Näiteks kui soovite iga kasutaja numbrit eraldi kontrollida, peate määratlema veeru „Kasutaja” klausliga GROUP BY, lugedes iga kasutaja kirjeid COUNT (*) -ga.

>> VALI Kasutaja , COUNT (*) Alates andmed .Sotsiaalne RÜHMITA Kasutaja ;

Ridade loendamise ajal koos klausliga GROUP BY saate valida rohkem kui kaks veergu, järgmiselt.

>> VALI Kasutaja ,Vanus,Veebisait, COUNT (*) Alates andmed .Sotsiaalne RÜHMITA Veebisait;

Kui tahame WHERE klauslit kasutades ridade loendamist, kus on GROUP BY ja COUNT (*) kõrval teatud tingimused, saate seda ka teha. Allolev päring toob ja loeb veergude kirjed: „Kasutaja”, „Veebisait” ja „Vanus”, kus veebisaidi väärtus on ainult „Instagram” ja „Snapchat”. Näete, et meil on mõlema veebisaidi jaoks ainult 1 kirje erinevate kasutajate jaoks.

>> VALI Kasutaja ,Veebisait,Vanus, COUNT (*) Alates andmed .Sotsiaalne KUS Veebisait='Instagram' Või Veebisait='Snapchat' RÜHMITA Veebisait,Vanus;

MySQL COUNT (*) koos klausliga GROUP BY ja ORDER BY

Proovime klahve GROUP BY ja ORDER BY koos COUNT () meetodiga. Toome ja loendame tabeli read 'sotsiaalne', korraldades andmed selle päringu abil kahanevas järjekorras:

>> VALI Kasutaja ,Veebisait,Vanus, COUNT (*) Alates andmed .Sotsiaalne RÜHMITA Vanus TELLI COUNT (*) DESC ;

Allpool toodud päring loendab esmalt read ja kuvab seejärel ainsad kirjed, mille COUNT on suurem kui 2 kasvavas järjekorras.

>> VALI Kasutaja ,Vanus, COUNT (*) Alates andmed .Sotsiaalne RÜHMITA Vanus Omades COUNT (*) > 2 TELLI COUNT (*) ASC ;

Järeldus

Oleme läbinud kõik võimalikud meetodid sobivate või dubleeritud kirjete loendamiseks, kasutades meetodit COUNT () koos erinevate muude klauslitega.