Betariko.com - Query SQL ORDER BY digunakan untuk mengurutkan data dalam urutan menaik atau menurun, berdasarkan satu atau beberapa kolom. Beberapa database mengurutkan hasil kueri dalam urutan menaik secara default.
Contoh Sintaks Query SQL Sorting Result
Sintaks dasar klausa ORDER BY yang akan digunakan untuk mengurutkan hasil dalam urutan menaik atau menurun adalah sebagai berikut
SELECT daftar kolom
FROM nama_tabel
[WHERE kondisi]
[ORDER BY kolom1, kolom2, .. kolomN] [ASC | DESC];
Anda dapat menggunakan lebih dari satu kolom dalam klausa ORDER BY. Pastikan kolom apa pun yang Anda gunakan untuk mengurutkan, kolom itu harus ada dalam daftar kolom.
Contoh
Pertimbangkan tabel PELANGGAN yang memiliki catatan berikut:
+----+----------+-----+-----------+----------+
| ID | NAMA | USIA | ALAMAT | GAJI |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmadabad | 20000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 20000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500,00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | anggota parlemen | 4500.00 |
| 7 | Muffy | 24 | Indonesia | 10000.00 |
+----+----------+-----+-----------+----------+
Berikut ini adalah contoh, yang akan mengurutkan hasil dalam urutan menaik berdasarkan NAMA dan GAJI.
SQL> SELECT * FROM PELANGGANORDER BY NAMA, GAJI;
Ini akan menghasilkan hasil berikut
+----+----------+-----+-----------+----------+| ID | NAMA | USIA | ALAMAT | GAJI |+----+----------+-----+-----------+----------+| 4 | Chaitali | 25 | Mumbai | 6500,00 || 5 | Hardik | 27 | Bhopal | 8500.00 || 3 | kaushik | 23 | Kota | 20000.00 || 2 | Khilan | 25 | Delhi | 1500.00 || 6 | Komal | 22 | anggota parlemen | 4500.00 || 7 | Muffy | 24 | Indonesia | 10000.00 || 1 | Ramesh | 32 | Ahmadabad | 20000.00 |+----+----------+-----+-----------+----------+
Blok kode berikut memiliki contoh, yang akan mengurutkan hasil dalam urutan menurun menurut NAME.
SQL> PILIH * DARI PELANGGAN
ORDER DENGAN NAMA DESC;
Ini akan menghasilkan hasil berikut
+----+----------+-----+-----------+----------+| ID | NAMA | USIA | ALAMAT | GAJI |+----+----------+-----+-----------+----------+| 1 | Ramesh | 32 | Ahmadabad | 20000.00 || 7 | Muffy | 24 | Indonesia | 10000.00 || 6 | Komal | 22 | anggota parlemen | 4500.00 || 2 | Khilan | 25 | Delhi | 1500.00 || 3 | kaushik | 23 | Kota | 20000.00 || 5 | Hardik | 27 | Bhopal | 8500.00 || 4 | Chaitali | 25 | Mumbai | 6500,00 |+----+----------+-----+-----------+----------+
Untuk mengambil baris dengan urutan pilihan mereka sendiri, kueri SELECT yang digunakan adalah sebagai berikut
SQL> SELECT * DARI PELANGGANORDER BY (CASE ALAMATWHEN 'DELHI' THEN 1WHEN 'BHOPAL' THEN 2WHEN 'KOTA' THEN 3WHEN 'AHMEDABAD' THEN 4WHEN 'MP' THEN 5ELSE 100 END) ASC, ALAMAT DESC;
Ini akan menghasilkan hasil berikut
+----+----------+-----+-----------+----------+| ID | NAMA | USIA | ALAMAT | GAJI |+----+----------+-----+-----------+----------+| 2 | Khilan | 25 | Delhi | 1500.00 || 5 | Hardik | 27 | Bhopal | 8500.00 || 3 | kaushik | 23 | Kota | 20000.00 || 6 | Komal | 22 | anggota parlemen | 4500.00 || 4 | Chaitali | 25 | Mumbai | 6500,00 || 7 | Muffy | 24 | Indonesia | 10000.00 || 1 | Ramesh | 32 | Ahmadabad | 20000.00 |+----+----------+-----+-----------+----------+
Ini akan mengurutkan pelanggan berdasarkan ALAMAT di Anda sendiri atau Urutan preferensi terlebih dahulu dan dalam urutan alami untuk alamat yang tersisa. Juga, Alamat yang tersisa akan diurutkan dalam urutan abjad terbalik.