Apabila terdapat sejumlah besar data, kita sering melihat kemungkinan untuk memanipulasi data mengikut kehendak kita. Fasal GROUP BY adalah salah satu , digunakan untuk mengelompokkan data berdasarkan beberapa lajur, atau berdasarkan kondisi. Dalam artikel ini mengenai SQL GROUP BY Statement, saya akan membincangkan beberapa cara untuk menggunakan pernyataan GROUP BY dalam urutan berikut:
Sebelum kita beralih ke contoh bagaimana menggunakan klausa GROUP BY, marilah kita memahami apa itu GROUP BY dalam SQL dan sintaksnya.
Pernyataan SQL GROUP BY
Pernyataan ini digunakan untuk mengumpulkan rekod yang mempunyai nilai yang sama. Pernyataan GROUP BY sering digunakan dengan fungsi agregat untuk mengelompokkan hasilnya dengan satu atau lebih lajur.Selain daripada ini, klausa GROUP BY juga digunakan dengan klausa HAVING dan untuk mengelompokkan hasil yang ditetapkan berdasarkan keadaan.
SQL GROUP BY Sintaks
PILIH Lajur1, Lajur2, ..., LajurN DARI Nama Jadual DI MANA Keadaan KUMPULAN MENGIKUT Nama Lajur PESANAN MENGIKUT Nama Lajur
Di sini, anda boleh menambahkan fungsi agregat sebelum nama lajur, dan juga klausa MEMILIKI di akhir pernyataan untuk menyebut keadaan.Seterusnya, dalam artikel ini mengenai SQL GROUP BY, mari kita memahami cara melaksanakan penyataan ini.
Contoh:
Untuk pemahaman anda yang lebih baik, saya telah membahagikan contohnya kepada bahagian berikut:
Saya akan mempertimbangkan jadual berikut untuk menjelaskan kepada anda contoh:
Empid | EmpName | Empatkan e-mel | Nombor telefon | Gaji | Bandar |
satu | Nidhi | nidhi@sample.com | 9955669999 | 50,000 | Mumbai |
2 | Anay | anay@sample.com | 9875679861 | 55000 | Letak |
3 | Rahul | rahul@sample.com | 9876543212 | 35000 | Delhi |
4 lulus dengan nilai dalam java | Sonia | sonia@sample.com | 9876543234 | 35000 | Delhi |
5 | Akash | akash@sample.com | 9866865686 | 25000 | Mumbai |
Mari kita perhatikan setiap satu daripadanya.
Gunakan SQL GROUP BY pada lajur tunggal
Contoh:
Tulis pertanyaan untuk mendapatkan bilangan pekerja di setiap bandar.
PILIH COUNT (EmpID), Bandar DARI KUMPULAN Kakitangan MENGIKUT Bandar
Pengeluaran:
Anda akan melihat output berikut:
Kira (EmpID) | Bandar |
2 | Delhi |
2 | Mumbai |
satu | Letak |
Gunakan SQL GROUP BY pada beberapa lajur
Contoh:
Tulis pertanyaan untuk mendapatkan bilangan pekerja yang mempunyai gaji yang berbeza di setiap bandar.
PILIH Bandar, Gaji, Kira (*) DARI KUMPULAN Kakitangan MENGIKUT Bandar, Gaji
Pengeluaran:
Jadual akan mempunyai data berikut:
Bandar | Gaji | Kira (*) |
Delhi | 35000 | 2 |
Mumbai | 25000 | satu |
Mumbai | 50,000 | satu |
Letak | 55000 | satu |
Gunakan SQL GROUP BY dengan ORDER BY
Apabila kita menggunakan pernyataan SQL GROUP BY dengan PESANAN OLEH klausa , nilai dapat disusun sama ada mengikut urutan menaik atau menurun.
Contoh:
Tulis pertanyaan untuk mendapatkan bilangan pekerja di setiap bandar, diurutkan mengikut urutan menurun.
SELECT COUNT (EmpID), City DARI KUMPULAN Karyawan MENGIKUT City ORDER BY COUNT (EmpID) DESC
Pengeluaran:
Jadual akan mempunyai data berikut:
Kira (EmpID) | Bandar |
2 | Delhi |
2 | Mumbai |
satu | Letak |
Gunakan SQL GROUP BY dengan klausa HAVING
Pernyataan SQL GROUP BY digunakan dengan klausa ‘MEMILIKI’ untuk menyebut keadaan pada kumpulan.Juga, kerana kita tidak dapat menggunakan fungsi agregat dengan klausa WHERE, kita harus menggunakan klausa ‘MEMILIKI’ untuk menggunakan fungsi agregat dengan GROUP BY.
Contoh:
Tulis pertanyaan untuk mendapatkan bilangan pekerja di setiap bandar, yang mempunyai gaji> 15000
PILIH COUNT (EmpID), Bandar DARI KUMPULAN Karyawan MENGIKUT GAJI Bandar> 15000
Pengeluaran:
Oleh kerana semua catatan dalam jadual Karyawan mempunyai gaji> 15000, kita akan melihat jadual berikut sebagai output:
Kira (EmpID) | Bandar |
2 | Delhi |
2 | Mumbai |
satu | Letak |
Gunakan GROUP BY dengan BERSAMA
adalah SQL pernyataan yang digunakan untuk menggabungkan baris dari dua atau lebih jadual, berdasarkan lajur yang berkaitan antara jadual tersebut. Kita boleh menggunakan pernyataan SQL GROUP BY untuk mengelompokkan set hasil berdasarkan lajur / lajur.Pertimbangkan jadual di bawah untuk melaksanakan pernyataan BERSAMA dengan klausa SQL GROUP BY.
Jadual Projek:
ProjekID | Empid | Pelanggan | Tarikh Projek |
2. 3. 4. 5 | satu | 4 | 01-26-2019 |
9876 | 2 | 5 | 02-28-2019 |
3456 | 3 | 6 | 03-12-2019 |
Jadual Pelanggan:
Pelanggan | Nama pelanggan |
4 | Sanjana |
5 | Rohan |
6 | Arun |
Contohnya
Tulis pertanyaan untuk menyenaraikan jumlah projek yang diminta oleh setiap pelanggan:
SELECT Clients.ClientName, COUNT (Projects.ProjectID) AS RequestProjects DARI Projek LEFT JOIN Clients ON Projects.ProjectID = Clients.ProjectID GROUP BY ClientName
Pengeluaran:
Jadual akan mempunyai data berikut:
Nama pelanggan | Projek yang Diminta |
Arun | satu |
Rohan | satu |
Sanjana | satu |
Dengan itu, kita akan mengakhiri artikel SQL GROUP BY. Lihat ini oleh Edureka, syarikat pembelajaran dalam talian yang dipercayai dengan rangkaian atau lebih daripada 250,000 pelajar yang berpuas hati tersebar di seluruh dunia. Kursus ini melatih anda mengenai konsep teras & alat dan teknik canggih untuk mengurus data dan mentadbir Pangkalan Data MySQL. Ia merangkumi pembelajaran langsung mengenai konsep seperti MySQL Workbench, MySQL Server, Data Modeling, MySQL Connector, Database Design, MySQL Command line, MySQL Functions, dll. Akhir latihan, anda akan dapat membuat dan mentadbir MySQL Database anda sendiri dan menguruskan data.
Ada soalan untuk kami? Sila sebutkan di bahagian komen artikel “SQL GROUP BY” ini dan kami akan menghubungi anda secepat mungkin.