Suure hulga andmete olemasolul näeme sageli võimalust andmetega vastavalt meie nõuetele manipuleerida. GROUP BY klausel on üks selline , mida kasutatakse andmete rühmitamiseks mõne veeru või tingimuste põhjal. Selles SQL GROUP BY avalduse artiklis käsitlen mõnda lausete GROUP BY järgmises järjestuses kasutamist:
Enne kui liigume näiteid selle kohta, kuidas klauslit GROUP BY kasutada, andke meile aru, mis on GROUP BY SQL-is ja selle süntaksis.
SQL GROUP BY lause
Seda lauset kasutatakse samade väärtustega kirjete rühmitamiseks. Grupi BY-lauset kasutatakse koondfunktsioonide abil sageli tulemuste rühmitamiseks ühe või mitme veeru järgi.Peale selle kasutatakse klauslit GROUP BY ka HAVING-klausliga ja tulemuste kogumi grupeerimiseks tingimuste alusel.
SQL GRUPP süntaksi järgi
VALI veerg1, veerg2, ..., veerg N tabeli nimest WHERE TINGIMUS GRUPP VeerusNimi (d)
Siin saate lisada koondfunktsioonid veergude nimede ette ja lause HAVING lause ka tingimuse mainimiseks.Järgmisena andke meile selles SQL GROUP BY-i artiklis aru, kuidas seda lauset rakendada.
Näited:
Teie paremaks mõistmiseks jagasin näited järgmistesse osadesse:
Kaalun järgnevat tabelit, et teile näiteid selgitada:
EmpID | EmpName | EmpEmail | Telefoninumber | Palk | Linn |
üks | Nidhi | nidhi@sample.com | 9955669999 | 50 000 | Mumbai |
2 | Anay | anay@sample.com | 9875679861 | 55000 peakokk vs ansible vs nukk | Pane |
3 | Rahul | rahul@sample.com | 9876543212 | 35000 | Delhi |
4 | Sonia | sonia@sample.com | 9876543234 | 35000 | Delhi |
5 | Akash | akash@sample.com | 9866865686 | 25000 | Mumbai |
Heidame pilgu igale neist.
Kasuta SQL GROUP BY ühes veerus
Näide:
Töötajate arvu leidmiseks igas linnas kirjutage päring.
Valige COUNT (EmpID), linn töötajate hulgast RÜHM linna järgi
Väljund:
Näete järgmist väljundit:
Count (EmpID) | Linn |
2 | Delhi arvu java faktoriaal |
2 | Mumbai |
üks | Pane |
Kasutage SQL GROUP BY mitmel veerul
Näide:
Kirjutage päring, et leida töötajate arv, kellel on igas linnas erinev palk.
Valige linn, palk, arv (*) töötajate grupist linna, palk
Väljund:
Tabelis on järgmised andmed:
Linn | Palk | Krahv (*) |
Delhi | 35000 | 2 |
Mumbai | 25000 | üks |
Mumbai | 50 000 | üks |
Pane | 55000 | üks |
Kasutage SQL GROUP BY koos ORDER BY-ga
Kui kasutame käsku SQL GROUP BY Klausel ORDER BY , väärtused sorteeritakse kas kasvavas või kahanevas järjekorras.
Näide:
Kirjutage päring töötajate arvu leidmiseks igas linnas järjestatuna kahanevas järjekorras.
VALI COUNT (EmpID), linn töötajatelt RÜHM linna järjekorra järgi maakonna järgi (empid) kirjeldus
Väljund:
Tabelis on järgmised andmed:
Count (EmpID) | Linn |
2 | Delhi |
2 | Mumbai |
üks | Pane |
Kasutage SQL GROUP BY koos HAVING-klausliga
SQL GROUP BY-lauset kasutatakse koos klausliga ‘HAVING’, et mainida rühmade tingimusi.Lisaks, kuna me ei saa liitfunktsioone kasutada WHERE-klausliga, peame koondfunktsioonide GROUP BY-ga kasutamiseks kasutama klauslit HAVING.
Näide:
Kirjutage päring, et leida töötajate arv igas linnas, kelle palk on üle 15000
VALI ARV (EMPID), linn töötajate rühmitusest PALGA PALGAS Linna järgi> 15000
Väljund:
Kuna kõigi töötajate tabelis on kirjed, mille palk on üle 15000, näeme väljundina järgmist tabelit:
Count (EmpID) | Linn |
2 | Delhi |
2 | Mumbai |
üks | Pane |
Kasutage funktsiooni GROUP BY JOINS
on SQL laused, mida kasutatakse kahe või enama tabeli ridade kombineerimiseks, tuginedes nende tabelite omavahel seotud veerule. Tulemushulga rühmitamiseks veeru / veergude põhjal saame kasutada käsku SQL GROUP BY.Mõelge järgmistele tabelitele JOIN-lausete käivitamiseks klausliga SQL GROUP BY.
Projektide tabel:
ProjectID | EmpID | ClientID | ProjectDate |
2. 3. 4. 5 | üks | 4 | 26.01.2019 |
9876 | 2 | 5 | 28.02.2019 |
3456 | 3 | 6 | 12.03.2019 |
Klientide tabel:
ClientID | Kliendi nimi |
4 | Sanjana |
5 | Rohan |
6 | Arun |
Näide
Kirjutage päring, et loetleda iga kliendi soovitud projektide arv:
java mis on märk
SELECT Clients.ClientName, COUNT (Projects.ProjectID) AS RequestedProjects from Projects LEFT JOIN kliente projektides. ProjektID = Clients.ProjectID GROUP BY ClientName
Väljund:
Tabelis on järgmised andmed:
Kliendi nimi | Taotletud projektid |
Arun | üks |
Rohan | üks |
Sanjana | üks |
Sellega jõuame SQL GROUP BY artikli lõppu. Vaadake seda autor Edureka, võrguga usaldusväärne veebipõhine õppefirma või Rohkem kui 250 000 rahulolevat õppijat levib üle kogu maailma. See kursus õpetab teid põhikontseptsioonide, täiustatud tööriistade ja tehnikate kohta andmete haldamiseks ja MySQL-i andmebaasi haldamiseks. See sisaldab praktilist õppimist selliste mõistete osas nagu MySQL Workbench, MySQL Server, andmemodelleerimine, MySQL-pistik, andmebaaside kujundus, MySQL-i käsurida, MySQL-funktsioonid jne. Koolituse lõpus saate luua ja hallata oma MySQL-i andmebaasi ja andmete haldamine.
Kas teil on meile küsimus? Palun mainige seda selle artikli „SQL GROUP BY” kommentaaride jaotises ja võtame teiega ühendust niipea kui võimalik.