Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

KELOMPOK MENURUT vs ORDER BY

Klausa GROUP BY dan klausa ORDER BY dalam SQL digunakan untuk mengatur data yang diperoleh dari query SQL. Perbedaan penting antara klausa GROUP BY dan klausa ORDER BY adalah bahwa klausa GROUP BY diterapkan ketika kita ingin menggunakan fungsi agregat dalam kueri SQL pada lebih dari satu set baris. Sebaliknya, klausa ORDER BY diterapkan ketika kita ingin menerima data yang diperoleh oleh kueri dalam urutan yang diurutkan. Sebelum beralih ke grafik perbandingan, pertama-tama kita akan memahami klausa SQL ini.

GROUP BY Clause

Pernyataan GROUP BY dalam SQL menggunakan kueri untuk menyusun data dalam nilai atribut. Biasanya, kita menggunakan klausa GROUP BY dengan pernyataan SELECT. Kita harus selalu menempatkan klausa GROUP BY setelah klausa WHERE. Selain itu, ini juga ditempatkan sebelum klausa ORDER BY.

Kita sering dapat menggunakan klausa GROUP BY dengan fungsi agregat seperti SUM, AVG, MIN, MAX, dan COUNT untuk menghasilkan output dari database. Kueri untuk klausa GROUP BY adalah kueri yang dikelompokkan, dan mengembalikan satu baris untuk setiap objek yang dikelompokkan.

Di bawah ini adalah Sintaks untuk menggunakan Klausa GROUP BY dalam kueri SQL

SELECT COLUMNNAME, FUNCTION(COLUMNNAME) FROM TABLENAME WHERE CONDITION GROUP BY COLUMNNAME;

Mari kita pahami klausa GROUP BY dengan bantuan beberapa contoh. Perhatikan tabel berikut beserta catatan yang diberikan.

Tabel:Karyawan

KARYAWAN FIRST_NAME LAST_NAME GAJI KOTA DEPARTEMEN MANAGERID JAM_KERJA GENDER
1001 VAIBHAVI MISHRA 65000 PUNE ORACLE 1 12 B
1002 VAIBHAV SHARMA 60000 NOIDA ORACLE 1 9 M
1003 NIKHIL VANI 50.000 JAIPUR FMW 2 10 M
2001 PRACHI SHARMA 55500 CHANDIGARH ORACLE 1 10 B
2002 BHAVESH JAIN 65500 PUNE FMW 2 12 M
2003 RUCHIKA JAIN 50.000 MUMBAI UJI 4 9 B
3001 PRANOTI SHENDE 55500 PUNE JAVA 3 9 B
3002 ANUJA DIMANA 50500 JAIPUR FMW 2 9 B
3003 DEEPAM JAUHARI 58500 MUMBAI JAVA 3 12 M
4001 RAJESH BAIK 60500 MUMBAI UJI 4 10 M

Contoh 1: Misalkan kita ingin mengetahui jumlah gaji karyawan di kota tertentu untuk data di atas. Untuk melakukan ini, kami akan menjalankan kueri di bawah ini sebagai berikut:

SELECT CITY, SUM(SALARY) FROM EMPLOYEES GROUP BY CITY;

Query ini awalnya membentuk hasil yang mengelompokkan kota. Selanjutnya, SUM fungsi dilakukan pada setiap kelompok kota, dan akhirnya, kita akan mendapatkan hasil yang diinginkan seperti yang ditunjukkan di bawah ini:

Contoh 2: Misalkan kita ingin mengetahui gaji maksimal karyawan di departemen tertentu untuk data di atas. Untuk melakukan ini, kami akan menjalankan kueri di bawah ini sebagai berikut:

SELECT DEPARTMENT, MAX(SALARY) FROM EMPLOYEES GROUP BY DEPARTMENT;

Query ini awalnya membentuk hasil yang mengelompokkan departemen. Selanjutnya, MAX fungsi dilakukan pada setiap kelompok departemen, dan akhirnya, kita akan mendapatkan hasil yang diinginkan seperti yang ditunjukkan di bawah ini:

PESAN BERDASARKAN Klausul

Klausa GROUP BY dan klausa ORDER BY dapat digunakan dengan pernyataan SELECT. Dalam kueri SQL, kami menggunakan klausa ORDER BY untuk mengurutkan catatan yang dikembalikan oleh kueri dalam urutan menaik atau menurun. Jika kami tidak menyebutkan urutan pengurutan, seluruh hasil akan diurutkan secara default dalam urutan menaik.

Di bawah ini adalah Sintaks untuk menggunakan Klausa ORDER BY dalam query SQL

SELECT * FROM TABLENAME ORDER BY [ASC | DESC];

Mari kita memahami klausa ORDER BY dengan bantuan beberapa contoh. Perhatikan tabel berikut beserta catatan yang diberikan.

Tabel:Karyawan

KARYAWAN FIRST_NAME LAST_NAME GAJI KOTA DEPARTEMEN MANAGERID JAM_KERJA GENDER
1001 VAIBHAVI MISHRA 65000 PUNE ORACLE 1 12 B
1002 VAIBHAV SHARMA 60000 NOIDA ORACLE 1 9 M
1003 NIKHIL VANI 50.000 JAIPUR FMW 2 10 M
2001 PRACHI SHARMA 55500 CHANDIGARH ORACLE 1 10 B
2002 BHAVESH JAIN 65500 PUNE FMW 2 12 M
2003 RUCHIKA JAIN 50.000 MUMBAI UJI 4 9 B
3001 PRANOTI SHENDE 55500 PUNE JAVA 3 9 B
3002 ANUJA DIMANA 50500 JAIPUR FMW 2 9 B
3003 DEEPAM JAUHARI 58500 MUMBAI JAVA 3 12 M
4001 RAJESH BAIK 60500 MUMBAI UJI 4 10 M

Contoh 1: Misalkan kita ingin mengatur hasil dalam urutan yang diurutkan, baik menaik atau menurun, berdasarkan kolom nama depan. Dalam hal ini, kami ingin menggunakan klausa ORDER BY untuk mendapatkan hasilnya. Untuk melakukan ini, kami akan menjalankan kueri di bawah ini sebagai berikut:

SELECT * FROM EMPLOYEES ORDER BY FIRST_NAME ASC;

Perbedaan Kunci antara GROUP BY dan ORDER BY

Berikut ini adalah hal-hal yang membedakan antara klausa GROUP BY dan ORDER BY:

  • Pernyataan GROUP BY dalam SQL digunakan untuk mengelompokkan record berdasarkan nilai yang sama dalam kolom tertentu. Di sisi lain, klausa ORDER BY dalam SQL digunakan untuk mengurutkan hasil tampilan dalam urutan menaik atau menurun.
  • Saat melakukan kueri menggunakan klausa GROUP BY dalam kueri SQL, wajib menggunakan fungsi agregat. Di sisi lain, saat menggunakan klausa ORDER BY di SQ, tidak wajib menggunakan fungsi agregat.
  • Klausa GROUP BY selalu ditempatkan dalam query SQL setelah klausa WHERE tetapi sebelum klausa ORDER BY. Di sisi lain, klausa ORDER BY selalu ditempatkan setelah klausa GROUP BY.

Bagan Perbandingan

SR.NO GROUP BY PESAN OLEH
1 Klausa GROUP BY digunakan untuk mengelompokkan baris dengan nilai yang sama. Klausa ORDER BY digunakan untuk mengurutkan hasil baik secara descending maupun ascending
2 Ini mengontrol penyajian baris Ini mengontrol presentasi kolom
3 klausa GROUP BY selalu ditempatkan sebelum klausa ORDER BY. klausa ORDER BY selalu ditempatkan setelah klausa GROUP BY.
4 Ini adalah wajib untuk menggunakan fungsi agregat Tidak wajib menggunakan fungsi agregat
5 Atribut tidak boleh berada di bawah fungsi agregat dalam pernyataan GROUP BY. Atribut dapat berada di bawah fungsi agregat dalam pernyataan ORDER BY.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Menambahkan Kolom di SQL

  2. MERGE:Memperbarui Tabel Sumber dan Target yang Terletak di Server Terpisah

  3. Kiat kinerja XML

  4. Indikator Kunci Desain Masalah

  5. 8 Perintah WP-CLI untuk Membersihkan dan Mengoptimalkan Situs Anda