Ha nagy mennyiségű adat van jelen, gyakran látunk lehetőséget arra, hogy az igényeink szerint kezeljük az adatokat. A GROUP BY záradék egy ilyen , néhány oszlop vagy feltétel alapján csoportosítja az adatokat. Ebben a cikkben az SQL GROUP BY utasításról a GROUP BY utasítások használatának néhány módját tárgyalom a következő sorrendben:
Mielőtt áttérnénk a GROUP BY záradék használatára vonatkozó példákra, értsük meg, mi az a GROUP BY az SQL-ben és annak szintaxisában.
SQL GROUP BY utasítás
Ez az utasítás azonos értékű rekordok csoportosítására szolgál. A GROUP BY utasítást gyakran használják az összesítő függvényekkel az eredmények egy vagy több oszlop szerinti csoportosításához.Ezen kívül a GROUP BY záradékot a HAVING és a hogy az eredmények halmazát a feltételek alapján csoportosítsák.
SQL GROUP BY szintaxis
SELECT oszlop1, oszlop2, ..., oszlopN FROM TableName WHERE feltétel CSOPORTOSZTÁS oszlopnév (ek) ORDER BY oszlopnév (ek)
Itt hozzáadhatja az összesítő függvényeket az oszlopnevek elé, valamint egy HAVING záradékot a utasítás végén, hogy megemlítsen egy feltételt.Ezután ebben a cikkben az SQL GROUP BY-ről ismertesse meg, hogyan kell végrehajtani ezt az állítást.
Példák:
A jobb megértés érdekében a példákat a következő szakaszokra bontottam:
Az alábbi táblázatot fogom megvizsgálni, hogy elmagyarázzam Önnek a példákat:
EmpID | EmpName | EmpEmail | Telefonszám | Fizetés | Város |
egy | Nidhi | nidhi@sample.com | 9955669999 | 50 000 | Mumbai |
2 | Anay | anay@sample.com | 9875679861 | 55000 | Tedd |
3 | Rahul | rahul@sample.com | 9876543212 | 35000 | Delhi |
4 | Sonia | sonia@sample.com | 9876543234 | 35000 java-nak van egy kapcsolata | Delhi |
5. | Akash | akash@sample.com | 9866865686 | 25000 | Mumbai |
Vessünk egy pillantást mindegyikre.
Használja az SQL GROUP BY-t egyetlen oszlopban
Példa:
Írjon egy lekérdezést az egyes városokban az alkalmazottak számának lekérdezéséhez.
SELECT COUNT (EmpID), város FROM Alkalmazottak csoportja város szerint
Kimenet:
A következő kimenetet fogja látni:
Count (EmpID) | Város |
2 | Delhi |
2 | Mumbai |
egy | Tedd |
Használja az SQL GROUP BY parancsot több oszlopban
Példa:
Írjon egy lekérdezést az egyes városokban eltérő fizetéssel rendelkező alkalmazottak számának lekérdezéséhez.
Válassza ki a várost, a fizetést, a grófot (*) az alkalmazottak csoportjából a város, a fizetés szerint
Kimenet:
A táblázat a következő adatokat fogja tartalmazni:
Város | Fizetés | Számol(*) |
Delhi | 35000 | 2 |
Mumbai | 25000 | egy |
Mumbai | 50 000 | egy |
Tedd | 55000 | egy |
Az SQL GROUP BY használata a ORDER BY használatával
Amikor az SQL GROUP BY utasítást a ORDER BY záradék , az értékeket növekvő vagy csökkenő sorrendbe rendezzük.
Példa:
Írjon egy lekérdezést az alkalmazottak számának lekérdezéséhez az egyes városokban, csökkenő sorrendbe rendezve.
SELECT COUNT (EmpID), Város FROM alkalmazottak CSOPORTJÁBAN City ORDER BY COUNT (EmpID) DESC
Kimenet:
A táblázat a következő adatokat fogja tartalmazni:
Count (EmpID) | Város |
2 | Delhi |
2 | Mumbai |
egy | Tedd |
Használja az SQL GROUP BY HAVING záradékot
Az SQL GROUP BY utasítást a „HAVING” záradékkal együtt használjuk a csoportokra vonatkozó feltételek megemlítésére.Továbbá, mivel nem használhatjuk az összesített függvényeket a WHERE záradékkal, a „HAVING” záradékot kell használnunk az összesített függvények GROUP BY-vel való használatához.
Példa:
Írjon egy lekérdezést, hogy kikérje az egyes városokban foglalkoztatottak számát, akiknek fizetése meghaladja a 15000-et
SELECT COUNT (EmpID), Város FROM Alkalmazottak CSOPORTJÁBAN A FÉL FELTÉTELÉNEK SZÁMÁNAK SZÁMA 15 000-nél
Kimenet:
Mivel az Employee tábla összes bejegyzése fizetése meghaladja a 15000-et, a következő táblázatot látjuk kimenetként:
Count (EmpID) | Város |
2 | Delhi |
2 | Mumbai |
egy | Tedd |
A GROUP BY használata a JOINS használatával
vannak SQL utasítások két vagy több táblázat sorainak kombinálásához, a táblák közötti kapcsolódó oszlop alapján. Az SQL GROUP BY utasítás segítségével oszlopok / oszlopok alapján csoportosíthatjuk az eredményhalmazt.Vegye figyelembe az alábbi táblázatokat a JOIN utasítások végrehajtásához az SQL GROUP BY záradékkal.
Projektek táblázat:
ProjectID | EmpID | Ügyfélazonosító | ProjectDate |
2. 3. 4. 5 | egy | 4 | 2019.01.26 |
9876 | 2 | 5. | 2019.02.28 |
3456 | 3 | 6. | 2019.12.03 |
Ügyfelek táblázat:
Ügyfélazonosító | Ügyfél Neve |
4 | Sanjana |
5. | Rohan |
6. | Egy futás |
Példa
Írjon egy lekérdezést az egyes ügyfelek által kért projektek számának felsorolásához:
SELECT Clients.ClientName, COUNT (Projects.ProjectID) AS RequestedProjects from Projects LEFT JOIN ügyfelek a projekteken. ProjektID = Clients.ProjectID GROUP BY ClientName
Kimenet:
A táblázat a következő adatokat fogja tartalmazni:
Ügyfél Neve | RequestedProjects |
Egy futás | egy |
Rohan | egy |
Sanjana | egy |
Ezzel véget értünk az SQL GROUP BY cikknek. Nézd meg ezt Edureka, egy megbízható, hálózattal rendelkező online tanulási társaság vagy Több mint 250 000 elégedett tanuló terjedt el szerte a világon. Ez a kurzus megtanítja Önt az adatok kezelésére és a MySQL adatbázis kezelésére vonatkozó alapvető fogalmakra, valamint fejlett eszközökre és technikákra. Magában foglalja a gyakorlati tanulást olyan fogalmakról, mint MySQL Workbench, MySQL Server, adatmodellezés, MySQL csatlakozó, adatbázis tervezés, MySQL parancssor, MySQL függvények stb. kezelni az adatokat.
Van egy kérdésünk? Kérjük, említse meg az „SQL GROUP BY” cikk megjegyzés szakaszában, és a lehető leghamarabb kapcsolatba lépünk Önnel.