Ak je k dispozícii veľké množstvo údajov, často vidíme možnosť manipulovať s údajmi podľa našich požiadaviek. Klauzula GROUP BY je jednou z nich , slúži na zoskupenie údajov podľa niekoľkých stĺpcov alebo podľa podmienok. V tomto článku o vyhlásení SQL GROUP BY budem diskutovať o niekoľkých spôsoboch použitia príkazov GROUP BY v nasledujúcom poradí:
Predtým, ako sa presunieme k príkladom, ako používať klauzulu GROUP BY, pochopme, čo je skupina GROUP BY v jazyku SQL a jej syntax.
Príkaz SQL GROUP BY
Tento príkaz sa používa na zoskupenie záznamov, ktoré majú rovnaké hodnoty. Príkaz GROUP BY sa často používa s agregačnými funkciami na zoskupenie výsledkov do jedného alebo viacerých stĺpcov.Okrem toho sa klauzula GROUP BY používa aj s klauzulou HAVING a zoskupiť výsledkovú sadu na základe podmienok.
Syntax SQL GROUP BY
VYBERTE Stĺpec1, Stĺpec2, ..., StĺpecN OD TABUĽKY KDE Podmienka SKUPINOVAŤ PODĽA Názvu stĺpca
Tu môžete pridať agregačné funkcie pred názvy stĺpcov a tiež klauzulu HAVING na konci príkazu, ktorá uvedie podmienku.Ďalej v tomto článku o skupine SQL GROUP BY pochopíme, ako implementovať toto vyhlásenie.
Príklady:
Pre lepšie pochopenie som príklady rozdelil do nasledujúcich častí:
Nasledujúcu tabuľku vysvetlím na príkladoch:
EmpID | EmpName | EmpEmail | Telefónne číslo | Plat | Mesto |
jeden | Nidhi | nidhi@sample.com | 9955669999 | 50 000 | Bombaj |
2 | Anay | anay@sample.com | 9875679861 | 55000 | Daj |
3 | Rahul | rahul@sample.com | 9876543212 | 35000 | Dillí |
4 | Sonia | sonia@sample.com | 9876543234 | 35000 | Dillí |
5 | Akash | akash@sample.com | 9866865686 | 25000 | Bombaj |
Pozrime sa na každú z nich.
Použite SQL GROUP BY na jednom stĺpci
Príklad:
Napísať dopyt a zistiť počet zamestnancov v jednotlivých mestách.
VYBERTE POČET (EmpID), mesto OD zamestnancov SKUPINU PODĽA mesta
Výkon:
Uvidíte nasledujúci výstup:
Počet (EmpID) | Mesto |
2 | Dillí |
2 | Bombaj |
jeden | Daj |
Použite SQL GROUP BY vo viacerých stĺpcoch
Príklad:
Napísať dopyt a zistiť počet zamestnancov, ktorí majú rozdielne platy v jednotlivých mestách.
VYBERTE Mesto, Plat, Počet (*) OD Zamestnancov SKUPINU PODĽA Mesto, Plat
Výkon:
Tabuľka bude obsahovať nasledujúce údaje:
Mesto | Plat | Počet (*) |
Dillí | 35000 | 2 |
Bombaj | 25000 | jeden |
Bombaj | 50 000 | jeden |
Daj | 55000 | jeden |
Použite SQL GROUP BY s ORDER BY
Keď použijeme príkaz SQL GROUP BY s Klauzula ORDER BY , hodnoty sa zoradia vzostupne alebo zostupne.
Príklad:
Napíšte dopyt na získanie počtu zamestnancov v jednotlivých mestách zoradených zostupne.
VYBERTE POČET (EmpID), Mesto OD Zamestnancov SKUPINU PODĽA Mesto OBJEDNAŤ POČET (EmpID) POP
Výkon:
Tabuľka bude obsahovať nasledujúce údaje:
Počet (EmpID) | Mesto |
2 | Dillí |
2 | Bombaj |
jeden | Daj |
Použite SQL GROUP BY s klauzulou HAVING
Príkaz SQL GROUP BY sa používa s klauzulou „HAVING“ na uvedenie podmienok v skupinách.Pretože tiež nemôžeme použiť agregačné funkcie s klauzulou WHERE, musíme použiť klauzulu „HAVING“ na použitie agregačných funkcií s funkciou GROUP BY.
Príklad:
Napísať dopyt a vyhľadať počet zamestnancov v každom meste s platom> 15 000
VYBERTE POČET (EmpID), Mesto OD Zamestnancov SKUPINU PODĽA Mesto S VÝPLATOU> 15000
Výkon:
Pretože všetky sú záznamy v tabuľke Zamestnanci majú plat> 15 000, zobrazí sa ako výstup nasledujúca tabuľka:
Počet (EmpID) | Mesto |
2 | Dillí |
2 dátová štruktúra frontu v jave | Bombaj |
jeden | Daj |
Použite GROUP BY s JOINS
sú SQL príkazy použité na kombináciu riadkov z dvoch alebo viacerých tabuliek na základe príbuzného stĺpca medzi týmito tabuľkami. Príkaz SQL GROUP BY môžeme použiť na zoskupenie výsledkovej sady podľa stĺpca / stĺpcov.Zvážte nasledujúce tabuľky, aby ste vykonali príkazy JOIN s klauzulou SQL GROUP BY.
Tabuľka projektov:
ProjectID | EmpID | ClientID | ProjectDate |
2. 3. 4. 5 | jeden | 4 | 26.01.2019 |
9876 | 2 | 5 | 02-28-2019 |
3456 | 3 | 6 | 03-12-2019 |
Tabuľka zákazníkov:
ClientID | Meno klienta |
4 | Sanjana |
5 | Rohan |
6 | Arun |
Príklad
Napíšte dopyt a uveďte počet projektov požadovaných každým klientom:
VYBERTE Clients.ClientName, COUNT (Projects.ProjectID) PODĽA POŽADOVANÝCH PROJEKTOV Z PROJEKTOV LEVÉ PRIPOJTE SA Klientov NA Projects.ProjectID = Clients.ProjectID SKUPINA PODĽA ClientName
Výkon:
Tabuľka bude obsahovať nasledujúce údaje:
Meno klienta | Požadované projekty |
Arun | jeden |
Rohan | jeden |
Sanjana | jeden |
Týmto sa dostávame na koniec článku SQL GROUP BY. Skontrolujte toto autor: Edureka, dôveryhodná online vzdelávacia spoločnosť so sieťou alebo f viac ako 250 000 spokojných študentov sa šíri po celom svete. Tento kurz vás naučí základné koncepty a pokročilé nástroje a techniky na správu údajov a správu databázy MySQL. Zahŕňa praktické učenie o konceptoch ako MySQL Workbench, MySQL Server, Data Modeling, MySQL Connector, Database Design, MySQL Command line, MySQL Functions atď. Na konci školenia budete môcť vytvárať a spravovať svoju vlastnú MySQL databázu a spravovať údaje.
Máte na nás otázku? Uveďte to prosím v sekcii komentárov v tomto článku „SQL GROUP BY“ a ozveme sa vám čo najskôr.