Ju mund të përdorni pyetje themelore SQL për të tërhequr të dhëna nga një bazë të dhënash, por kjo shpesh nuk siguron inteligjencë të mjaftueshme për të përmbushur kërkesat e biznesit. SQL gjithashtu ju siguron mundësinë për grupimin e rezultateve të pyetjeve bazuar në atributet e nivelit të rreshtit për të aplikuar funksione agregate duke përdorur klauzolën GROUP BY. Konsideroni, për shembull, një tabelë të rendit të të dhënave që përbëhet nga atributet më poshtë:
- RenditID - një vlerë numerike që identifikon në mënyrë unike çdo rend. Kjo fushë është çelësi kryesor për bazën e të dhënave.
- Salesperson - një vlerë teksti që siguron emrin e shitësit që shiti produktet. Kjo fushë është një çelës i jashtëm në një tabelë tjetër që përmban informacionin e personelit.
- CustomerID - një vlerë numerike që korrespondon me një numër llogarie të klientit. Kjo fushë është gjithashtu një çelës i jashtëm, duke iu referuar një tabele që përmban informacionin e llogarisë së klientit.
- Të ardhurat - një vlerë numerike që korrespondon me shumën e dollarit të shitjes.
Kur vjen koha për të kryer rishikime të performancës për shitësit, tabela e urdhrave përmban informacione të vlefshme që mund të përdoren për këtë shqyrtim. Gjatë vlerësimit të Jim-it, ju mund të shkruani një pyetje të thjeshtë, që merr të gjitha rekordet e shitjeve të Jim-it:
SELECT * NGA urdhra WHERE Salesperson LIKE 'Jim'Kjo do të merrte të gjitha të dhënat nga baza e të dhënave që korrespondon me shitjet e bëra nga Jim:
Redaktimi i ProduktitID CustomerID të Ardhurave 12482 Jim 182 40000 12488 Jim 219 25000 12519 Jim 137 85000 12602 Jim 182 10000 12741 Jim 155 90000 Ju mund të rishikoni këtë informacion dhe të bëni disa llogaritje manuale për të dalë me statistikat e performancës, por kjo do të ishte një detyrë e lodhshme që do t'ju duhet të përsërisni për çdo shitës në kompani. Në vend të kësaj, ju mund ta zëvendësoni këtë punë me një pyetje të vetme GROUP BY që llogarit statistikat për çdo shitës në kompani. Ju thjesht shkruani pyetjen dhe specifikoni se baza e të dhënave duhet të grupojë rezultatet bazuar në fushën Salesperson. Ju mund të përdorni ndonjë nga funksionet e agregatit SQL për të kryer llogaritjet në rezultatet.
Ja një shembull. Nëse keni ekzekutuar deklaratën SQL në vijim:
Ju do të merrni rezultatet e mëposhtme:
Shitësi Gjithsej Numri më i vogël më i madh mesatar Jim 250000 10000 90000 50000 5 Mary 342000 24000 102000 57000 6 Bob 118000 4000 36000 39333 3Siç mund ta shihni, ky funksion i fuqishëm ju mundëson të gjeneroni raporte të vogla nga një query SQL, duke siguruar një inteligjencë biznesi të vlefshme për menaxherin që kryen shqyrtimet e performancës. Klauzola GROUP BY është përdorur shpesh në bazat e të dhënave për këtë qëllim dhe është një mjet i vlefshëm në trungun e DBA-së.