MySQL Count Matching Records, COUNT

Mysql Count Matching Records With Count



Tietojen redundanssi tapahtuu monista syistä. Monet monimutkaisista tehtävistä, jotka sinun on käsiteltävä tietokantajärjestelmien kanssa työskennellessäsi, yrittävät löytää päällekkäisiä arvoja. Tätä tarkoitusta varten käytämme COUNT () -yhdistelmämenetelmää. COUNT () -menetelmä palauttaa tietyssä taulukossa olevien rivien summan. COUNT () -toiminnon avulla voit laskea yhteen kaikki rivit tai vain rivit, jotka vastaavat määritettyä ehtoa. Tässä oppaassa opit tunnistamaan päällekkäiset arvot yhdelle tai ehkä useammalle MySQL -sarakkeelle käyttämällä COUNT (). COUNT () -menetelmällä on seuraavat kolme tyyppiä:

  • KREIVI(*)
  • COUNT (lauseke)
  • COUNT (DISTINCT -lauseke)

Varmista, että järjestelmään on asennettu MySQL. Avaa MySQL-komentorivin työasemaohjelma ja kirjoita salasanasi jatkaaksesi. Tarkastelemme joitain esimerkkejä vastaavien arvojen laskemisesta COUNT () -menetelmällä.









Meillä on taulukko 'sosiaalinen' kaaviossa 'data'. Tarkista sen tietue seuraavan kyselyn avulla.



>> VALITSE * ALK tiedot Sosiaalinen;





MySQL -MÄÄRÄ (*)

COUNT (*) -menetelmää käytetään laskemaan taulukossa olevien rivien määrä tai laskemaan rivien määrä annetun ehdon mukaan. Jos haluat tarkistaa taulukon rivien kokonaismäärän, kokeile alla olevaa kyselyä 'sosiaalinen'. Tuloksena on taulukossa yhteensä 15 riviä.

>> VALITSE KREIVI (*) ALK tiedot Sosiaalinen;



Vilkaise COUNT (*) -menetelmää määritellessäsi joitain ehtoja. Meidän on haettava rivien määrä, joissa käyttäjänimi on sama kuin 'Mustafa'. Näet, että tällä nimellä on vain 4 tietuetta.

>> VALITSE KREIVI (*) ALK tiedot Sosiaalinen MISSÄ Käyttäjä ='Mustafa';

Jos haluat hakea rivien kokonaismäärän, jossa käyttäjien verkkosivusto on Instagram, kokeile alla esitettyä kyselyä. Sosiaalisessa taulukossa on vain 4 tietuetta Instagram -verkkosivustolle.

>> VALITSE KREIVI (*) ALK tiedot Sosiaalinen MISSÄ Verkkosivusto='Instagram';

Voit noutaa niiden rivien kokonaismäärän, joiden ikä on yli 18, seuraavasti:

>> VALITSE KREIVI (*) ALK tiedot Sosiaalinen MISSÄ Ikä> 18;

Haetaan sarakkeiden 'Käyttäjä' ja 'Verkkosivusto' tiedot taulukosta, jossa Käyttäjänimi alkaa aakkosella 'M'. Kokeile kuoren alla olevia ohjeita.

>> VALITSE Käyttäjä ,Verkkosivusto ALK tiedot Sosiaalinen MISSÄ Käyttäjä Kuten 'M%'';

MySQL COUNT (lauseke)

MySQL: ssä COUNT (lauseke) -menetelmää käytetään vain, kun haluat laskea sarakkeen 'lauseke' ei-nolla-arvot. Ilmaisu olisi minkä tahansa sarakkeen nimi. Otetaan siitä yksinkertainen esimerkki. Olemme laskeneet vain sarakkeen 'Verkkosivusto' ei-nolla-arvot, jotka liittyvät sarakkeeseen 'Ikä', jonka arvo on '25'. Katso! Meillä on vain neljä ei-nollatietuetta verkkosivustoja käyttäville käyttäjille, joiden ikä on 25 vuotta.

>> VALITSE KREIVI (Verkkosivusto) ALK tiedot Sosiaalinen MISSÄ Ikä= 25;

MySQL COUNT (DISTNCT -lauseke)

MySQL: ssä COUNT (DISTINCT-lauseke) -menetelmää käytetään laskemaan ei-nolla-arvot ja sarakkeen 'lauseke' eri arvot. Laskemme selvän määrän muita kuin nolla-arvoja sarakkeessa 'Ikä' olemme käyttäneet alla olevaa kyselyä. Löydät kuusi ei-tyhjää ja erillistä tietuetta sarakkeesta 'Ikä' taulukosta 'sosiaalinen'. Tämä tarkoittaa, että meillä on yhteensä 6 eri ikäistä ihmistä.

>> VALITSE KREIVI ( DISTINCT Ikä) ALK tiedot Sosiaalinen;

MySQL COUNT (JOS (lauseke))

Jos haluat korostaa voimakkaasti, sinun on yhdistettävä COUNT () virtauksen säätötoimintoihin. Ensinnäkin jos haluat käyttää COUNT () -menetelmässä käytettyä lauseketta, voit käyttää IF () -funktiota. Tämä voi olla erittäin hyödyllistä, jotta tietokannan tiedot voidaan eritellä nopeasti. Laskemme rivien lukumäärän eri ikäolosuhteilla ja jaamme ne kolmeen eri sarakkeeseen, jotka voidaan sanoa luokiksi. Ensinnäkin COUNT (IF) laskee alle 20 -vuotiaat rivit ja tallentaa tämän luvun uuteen sarakkeeseen nimeltä 'Teenage'. Toinen LASKU (JOS) laskee rivit, joiden ikä on 20–30, ja se tallennetaan sarakkeeseen ”Nuori”. Kolmanneksi viimeinen laskee rivit, joiden ikä on yli 30 ja jotka on tallennettu sarakkeeseen 'Aikuinen'. Meillä on ennätyksemme mukaan viisi teini -ikäistä, 9 nuorta ja vain yksi kypsä henkilö.

>> VALITSE KREIVI ( JOS (Ikä< kaksikymmentä,1, TYHJÄ ))'Teini', KREIVI ( JOS (Ikä VÄLILLÄ kaksikymmentä JA 30,1, TYHJÄ ))'Nuori', KREIVI ( JOS (Ikä> 30,1, TYHJÄ ))'Kypsä' ALK tiedot Sosiaalinen;

MySQL COUNT (*) ja GROUP BY -lauseke

GROUP BY -lauseke on SQL -käsky, jota käytetään samoilla arvoilla oleville ryhmäriveille. Se palauttaa kussakin ryhmässä olevien arvojen kokonaismäärän. Jos haluat esimerkiksi tarkistaa kunkin käyttäjän numeron erikseen, sinun on määritettävä sarake 'Käyttäjä' GROUP BY -lausekkeella laskettaessa tietueet jokaiselle käyttäjälle, jolla on COUNT (*).

>> VALITSE Käyttäjä , KREIVI (*) ALK tiedot Sosiaalinen RYHMÄ Käyttäjä ;

Voit joko valita useamman kuin kaksi saraketta suorittaessasi rivien laskemista yhdessä GROUP BY -lausekkeen kanssa seuraavasti.

>> VALITSE Käyttäjä ,Ikä,Verkkosivusto, KREIVI (*) ALK tiedot Sosiaalinen RYHMÄ Verkkosivusto;

Jos haluamme laskea rivejä käyttäessämme WHERE -lauseketta, jossa on joitain ehtoja GROUP BY ja COUNT (*): n rinnalla, voit myös tehdä sen. Alla oleva kysely hakee ja laskee sarakkeiden tietueet: 'Käyttäjä', 'Verkkosivusto' ja 'Ikä', joissa verkkosivuston arvo on vain 'Instagram' ja 'Snapchat'. Näet, että meillä on vain 1 tietue molemmille sivustoille eri käyttäjille.

>> VALITSE Käyttäjä ,Verkkosivusto,Ikä, KREIVI (*) ALK tiedot Sosiaalinen MISSÄ Verkkosivusto='Instagram' Tai Verkkosivusto='Snapchat' RYHMÄ Verkkosivusto,Ikä;

MySQL COUNT (*), jossa GROUP BY ja ORDER BY -lauseke

Kokeillaan GROUP BY- ja ORDER BY -lausekkeita yhdessä COUNT () -menetelmän kanssa. Haetaan ja lasketaan sosiaalisen taulukon rivit järjestettäessä tiedot laskevaan järjestykseen käyttämällä tätä kyselyä:

>> VALITSE Käyttäjä ,Verkkosivusto,Ikä, KREIVI (*) ALK tiedot Sosiaalinen RYHMÄ Ikä TILAA KREIVI (*) DESC ;

Alla oleva kysely laskee ensin rivit ja näyttää sitten ainoat tietueet, joiden COUNT on suurempi kuin 2, nousevassa järjestyksessä.

>> VALITSE Käyttäjä ,Ikä, KREIVI (*) ALK tiedot Sosiaalinen RYHMÄ Ikä Ottaa KREIVI (*) > 2 TILAA KREIVI (*) ASC ;

Johtopäätös

Olemme käyneet läpi kaikki mahdolliset menetelmät vastaavien tai päällekkäisten tietueiden laskemiseksi käyttämällä COUNT () -menetelmää eri lauseilla.