Jaké je použití příkazu SQL GROUP BY?



Tento článek je komplexním průvodcem, jak pomocí příkazu SQL GROUP BY seskupit data podle několika podmínek nebo sloupců.

Pokud je k dispozici velké množství dat, často vidíme možnost manipulovat s daty podle našich požadavků. Klauzule GROUP BY je jednou z takových , slouží ke seskupení dat na základě několika sloupců nebo na základě podmínek. V tomto článku o příkazu SQL GROUP BY budu diskutovat o několika způsobech použití příkazů GROUP BY v následujícím pořadí:

  1. Příkaz GROUP BY
  2. Syntax
  3. Příklady:

Než přejdeme k příkladům, jak používat klauzuli GROUP BY, pochopme, co je GROUP BY v SQL a jeho syntaxi.





Příkaz SQL GROUP BY

Tento příkaz se používá ke seskupení záznamů, které mají stejné hodnoty. Příkaz GROUP BY se často používá s agregačními funkcemi ke seskupení výsledků podle jednoho nebo více sloupců.Kromě toho se klauzule GROUP BY používá také s klauzulí HAVING a seskupit sadu výsledků na základě podmínek.

Syntaxe SQL GROUP BY

VYBERTE Sloupec1, Sloupec2, ..., Sloupec N OD Název_tabulky KDE Podmínka SKUPINU PODLE Název_sloupce OBJEDNAT PODLE Název_sloupce

Zde můžete přidat agregační funkce před názvy sloupců a také klauzuli HAVING na konci příkazu, abyste uvedli podmínku.Dále v tomto článku o SQL GROUP BY pochopíme, jak implementovat toto prohlášení.



Příklady:

Pro lepší pochopení jsem příklady rozdělil do následujících částí:

Zvažuji následující tabulku, abych vám vysvětlil příklady:

EmpID EmpName EmpEmail Telefonní číslo Plat Město

jeden



Nidhi

nidhi@sample.com

9955669999

50 000

Bombaj

2

Anay

anay@sample.com

9875679861

55000

Dát

3

Rahul

rahul@sample.com

9876543212

35000

Dillí

4

Sonia

sonia@sample.com

9876543234

35000

Dillí

5

Akash

akash@sample.com

9866865686

25 000

Bombaj

Podívejme se na každého z nich.

Použijte SQL GROUP BY na jednom sloupci

Příklad:

Napište dotaz a získejte počet zaměstnanců v jednotlivých městech.

VYBERTE POČET (EmpID), město OD zaměstnanců SKUPINU PODLE města

Výstup:

Uvidíte následující výstup:

Count (EmpID) Město

2

Dillí

2

Bombaj

jeden

Dát

Použijte SQL GROUP BY na více sloupcích

Příklad:

Napište dotaz a získejte počet zaměstnanců s různými platy v jednotlivých městech.

VYBERTE město, plat, počet (*) OD zaměstnanců SKUPINU PODLE města, plat

Výstup:

Tabulka bude obsahovat následující údaje:

Město Plat Počet(*)

Dillí

35000

2

Bombaj

25 000

jeden

Bombaj

50 000

jeden

Dát

55000

jeden

Použijte SQL GROUP BY s ORDER BY

Když použijeme příkaz SQL GROUP BY s Klauzule ORDER BY , hodnoty se seřadí vzestupně nebo sestupně.

Příklad:

Napište dotaz a získejte počet zaměstnanců v každém městě seřazený sestupně.

VYBERTE POČET (EmpID), město OD zaměstnanců SKUPINU PODLE MĚSTA OBJEDNÁVKU PODLE POČETU (EmpID) POP

Výstup:

Tabulka bude obsahovat následující údaje:

Count (EmpID) Město

2

Dillí

2

Bombaj

jeden

Dát

Použijte SQL GROUP BY s klauzulí HAVING

Příkaz SQL GROUP BY se používá s klauzulí „HAVING“ k uvedení podmínek ve skupinách.Protože nemůžeme použít agregační funkce s klauzulí WHERE, musíme použít klauzuli „HAVING“ pro použití agregačních funkcí s GROUP BY.

Příklad:

Napište dotaz a získejte počet zaměstnanců v každém městě s platem> 15 000

VYBERTE POČET (EmpID), město OD zaměstnanců SKUPINU PODLE MĚST S VÝPLATOU> 15000

Výstup:

Protože všechny jsou záznamy v tabulce Zaměstnanec mají plat> 15 000, uvidíme jako výstup následující tabulku:

Count (EmpID) Město

2

Dillí

2

funkce, které se liší pouze svým návratovým typem, nelze přetížit

Bombaj

jeden

Dát

Použijte GROUP BY s JOINS

jsou SQL příkazy používané ke kombinování řádků ze dvou nebo více tabulek na základě souvisejícího sloupce mezi těmito tabulkami. Můžeme použít příkaz SQL GROUP BY ke seskupení sady výsledků na základě sloupce / sloupců.Zvažte níže uvedené tabulky k provedení příkazů JOIN s klauzulí SQL GROUP BY.

Tabulka projektů:

ID projektu EmpID ClientID ProjectDate
2. 3. 4. 5jeden401-26-2019
98762502-28-2019
3456363. 12. 2019

Tabulka zákazníků:

ClientID Jméno klienta

4

Sanjana

5

Rohan

6

Běh

Příklad

Napište dotaz a uveďte počet projektů požadovaných každým klientem:

VYBERTE Clients.ClientName, COUNT (Projects.ProjectID) AS RequestedProjects FROM Projects LEFT JOIN Clients ON Projects.ProjectID = Clients.ProjectID GROUP BY ClientName

Výstup:

Tabulka bude obsahovat následující údaje:

Jméno klienta Požadované projekty

Běh

jeden

Rohan

jeden

Sanjana

jeden

S tím se dostáváme na konec článku SQL GROUP BY. Podívejte se na to Edureka, důvěryhodná online vzdělávací společnost se sítí nebo f více než 250 000 spokojených studentů po celém světě. Tento kurz vás naučí základním konceptům a pokročilým nástrojům a technikám pro správu dat a správu databáze MySQL. Zahrnuje praktické učení o konceptech jako MySQL Workbench, MySQL Server, Data Modeling, MySQL Connector, Database Design, MySQL Command line, MySQL Functions atd. Na konci školení budete moci vytvářet a spravovat vlastní MySQL databázi a spravovat data.

Máte na nás dotaz? Uveďte to prosím v sekci komentářů v tomto článku „SQL GROUP BY“ a my se vám ozveme co nejdříve.