Alapvető SQL lekérdezéseket használhat az adatbázisból származó adatok lekéréséhez, de ez gyakran nem nyújt elegendő intelligenciát az üzleti követelményeknek való megfeleléshez. Az SQL lehetőséget nyújt arra is, hogy a sorszintű attribútumok alapján csoportos lekérdezési eredményeket csoportosítson annak érdekében, hogy az összesített függvényeket a GROUP BY klauzulával alkalmazza. Vegyük például az alábbi attribútumokat tartalmazó megbízásadat-táblázatot:
- Rendelés azonosító - egy számszerű érték, amely egyedileg azonosítja az egyes megrendeléseket. Ez a mező az adatbázis legfontosabb kulcsa.
- Eladó - szöveges érték, amely megadja a termékeket értékesítő eladó nevét. Ez a mező egy idegen kulcs egy másik, személyzeti információval ellátott táblázathoz.
- Ügyfél-azonosító - ügyfélszámlaszámnak megfelelő számérték. Ez a mező egy idegen kulcs is, amely egy ügyfélszámla-információkat tartalmazó táblázatot tartalmaz.
- jövedelem - az értékesítés dollárösszegének megfelelő számérték.
Amikor eljött az idő az értékesítőkkel kapcsolatos teljesítményértékelések elvégzésére, a Megrendelések táblázata értékes információkat tartalmaz, amelyek felhasználhatók a felülvizsgálathoz. A Jim értékelésekor például egy egyszerű lekérdezést írhat, amely a Jim összes értékesítési rekordját lekéri:
SELECT *
FROM Megrendelések
WHERE Az értékesítő JÁNOS "Jim"
Ez a Jim által végzett értékesítéseknek megfelelő összes rekordot letöltené: OrderID értékesítő ügyfél-azonosító bevétele
12482 Jim 182 40000
12488 Jim 219 25000
12519 Jim 137 85000
12602 Jim 182 10000
12741 Jim 155 90000
Ezt az információt megtekintheti és manuális számításokat végezhet, amelyek teljesítménystatisztikákat tartalmaznak, de ez egy unalmas feladat lenne, amelyet meg kellene ismételnie a vállalat minden egyes értékesítője számára. Ehelyett helyettesítheti ezt a munkát egy olyan GROUP BY lekérdezéssel, amely kiszámolja a vállalat egyes értékesítőinek statisztikáit. Egyszerűen írja le a lekérdezést, és adja meg, hogy az adatbázis csoportosítsa az eredményeket az értékesítési mező alapján. Ezután az SQL aggregate függvények bármelyikét használhatja az eredmények számításainak elvégzésére. Íme egy példa. Ha végrehajtotta a következő SQL utasítást: A "legnagyobb", a MAX (bevétel) AS "legnagyobb", az AVG (bevétel) AS "átlag", a COUNT (bevétel) AS "szám"
FROM Megrendelések
CSOPORT Az értékesítő
A következő eredményeket kapja: Értékesítési személy A legkisebb legnagyobb átlagos szám
Jim 250000 10000 90000 50000 5
Mary 342000 24000 102000 57000 6
Bob 118000 4000 36000 39333 3
Amint láthatja, ez a nagy teljesítményű funkció lehetővé teszi, hogy kis jelentéseket generáljon az SQL lekérdezésből, értékes üzleti intelligenciát nyújtva a teljesítményértékelő vezetőknek. A GROUP BY klauzulát gyakran használják adatbázisokban erre a célra, és értékes eszköz a DBA trükkökben.