Jūs varat izmantot pamata SQL vaicājumus, lai izgūtu datus no datu bāzes, bet bieži vien nesniedz pietiekami daudz informācijas, lai apmierinātu uzņēmējdarbības prasības. SQL nodrošina arī iespēju grupēt vaicājuma rezultātus, pamatojoties uz rindas līmeņa atribūtiem, lai izmantotu apkopotās funkcijas, izmantojot GROUP BY klauzulu. Apsveriet, piemēram, pasūtījumu datu tabulu, kurā ir šādi atribūti:
- OrderID - skaitliskā vērtība, kas unikāli identificē katru pasūtījumu. Šis lauks ir datu bāzes primārā atslēga .
- Pārdevējs - teksta vērtība, kurā norādīts pārdevējs, kas produktus pārdeva. Šis lauks ir ārējā atslēga citai tabulai, kurā ir personāla informācija.
- CustomerID - skaitliskā vērtība, kas atbilst klienta konta numuram. Šis lauks ir arī ārējā atslēga, atsaucoties uz tabulu, kurā ir klientu konta informācija.
- Ieņēmumi - skaitliska vērtība, kas atbilst pārdošanas dolāru summai.
Kad ir pienācis laiks veikt pārdevēju vērtējumus, pasūtījumu tabulā ir vērtīga informācija, ko var izmantot pārskatīšanai. Novērtējot Jim, jūs, piemēram, varētu uzrakstīt vienkāršu vaicājumu, kurā tiek izgūti visi Jim pārdošanas ieraksti:
SELECT * no pasūtījumiem, kur pārdevējs LIKE "Jim"Tas atteiks visus ierakstus no datubāzes, kas atbilst Jim veiktajam pārdošanas apjomam:
OrderID Pārdevējs CustomerID Ieņēmumi 12482 Jim 182 40000 12488 Jim 219 25000 12519 Jim 137 85000 12602 Jim 182 10000 12741 Jim 155 90000 Jūs varētu pārskatīt šo informāciju un veikt dažus manuālus aprēķinus, lai nākt klajā ar veiktspējas statistiku, taču tas būtu nogurdinošs uzdevums, kas jums būtu jāatkārto katram uzņēmuma pārdevējam. Tā vietā jūs varat aizstāt šo darbu ar vienu GROUP BY vaicājumu, kas aprēķina statistiku par katru uzņēmuma pārdevēju. Jūs vienkārši uzrakstiet vaicājumu un norādiet, ka datu bāzē jāapkopo rezultāti, pamatojoties uz pārdevēju lauku. Pēc tam jūs varat izmantot jebkuru no SQL kopsavilkuma funkcijām, lai veiktu rezultātu aprēķinus.
Šeit ir piemērs. Ja jūs izpildījāt šādu SQL:
Jūs saņemtu šādus rezultātus:
Pārdevējs Kopā Mazākais lielākais vidējais skaits Jim 250000 10000 90000 50000 5 Marija 342000 24000 102000 57000 6 Bob 118000 4000 36000 39333 3Kā redzat, šī jaudīgā funkcija ļauj ģenerēt nelielus pārskatus no SQL vaicājuma, nodrošinot vērtīgu biznesa izlūkošanu vadītājam, kurš veic darbības pārskatus. Šajā punktā GROUP BY klauzula bieži tiek izmantota datu bāzēs, un tas ir vērtīgs rīks DBA triku somā.