Anda boleh menggunakan pertanyaan SQL asas untuk mendapatkan data dari pangkalan data tetapi ini sering tidak memberikan kecerdasan yang mencukupi untuk memenuhi keperluan perniagaan. SQL juga menyediakan anda dengan keupayaan untuk mengumpulkan keputusan pertanyaan berdasarkan atribut peringkat baris untuk menggunakan fungsi agregat menggunakan klausa GROUP BY. Sebagai contoh, pertimbangkan jadual data pesanan yang mengandungi atribut di bawah:
- OrderID - nilai numerik secara unik mengenal pasti setiap pesanan. Medan ini adalah kunci utama untuk pangkalan data.
- Penjual - nilai teks yang memberikan nama jurujual yang menjual produk tersebut. Bidang ini adalah kunci asing kepada jadual lain yang mengandungi maklumat personel.
- ID pelanggan - nilai angka yang bersamaan dengan nombor akaun pelanggan. Bidang ini juga merupakan kunci asing, merujuk jadual yang mengandungi maklumat akaun pelanggan.
- Pendapatan - nilai angka yang bersamaan dengan jumlah dolar jualan.
Apabila tiba masanya untuk menjalankan ulasan prestasi untuk jurujual, jadual Pesanan mengandungi maklumat berharga yang boleh digunakan untuk semakan tersebut. Apabila menilai Jim, anda boleh, sebagai contoh, menulis pertanyaan mudah yang mengambil semua rekod jualan Jim:
PILIH *
DARI pesanan
WHERE Salesperson SEPERTI 'Jim'
Ini akan mengambil semua rekod dari pangkalan data yang sepadan dengan jualan yang dibuat oleh Jim: Perolehan Pelanggan Pesanan OrderID Pendapatan Pelanggan
12482 Jim 182 40000
12488 Jim 219 25000
12519 Jim 137 85000
12602 Jim 182 10000
12741 Jim 155 90000
Anda boleh menyemak maklumat ini dan melakukan beberapa pengiraan manual untuk menghasilkan statistik prestasi, tetapi ini akan menjadi tugas yang membosankan yang perlu anda ulangi untuk setiap jurujual di syarikat. Sebaliknya, anda boleh menggantikan kerja ini dengan permintaan GROUP BY tunggal yang mengira statistik bagi setiap jurujual di syarikat. Anda hanya menulis pertanyaan dan menyatakan bahawa pangkalan data harus mengelompokkan hasil berdasarkan pada bidang Salesperson. Anda kemudian boleh menggunakan mana-mana fungsi agregat SQL untuk melakukan pengiraan pada hasilnya. Berikut adalah contohnya. Sekiranya anda melaksanakan pernyataan SQL berikut: SELECT (Jualan) AS, Bilangan (Hasil) AS 'Jumlah', MIN (Pendapatan) AS '
DARI pesanan
KUMPULAN BY Salesperson
Anda akan mendapat keputusan berikut: Penjual Jumlah Jumlah Nombor Terbesar Terbesar
Jim 250000 10000 90000 50000 5
Mary 342000 24000 102000 57000 6
Bob 118000 4000 36000 39333 3
Seperti yang anda dapat lihat, fungsi yang berkuasa ini membolehkan anda menghasilkan laporan kecil dari dalam pertanyaan SQL, memberikan kecerdasan perniagaan yang berharga kepada pengurus yang menjalankan ulasan prestasi. Klausa GROUP BY sering digunakan dalam pangkalan data untuk tujuan ini dan merupakan alat yang bernilai dalam beg trik DBA.