DIPESAN OLEH di MySQL: Kueri DESC & ASC dengan CONTOH
Hasil Penyortiran
Dengan menggunakan perintah SELECT, hasilnya dikembalikan dalam urutan yang sama dengan catatan yang ditambahkan ke database. Ini adalah urutan default. Di bagian ini, kita akan melihat bagaimana kita bisa mengurutkan hasil kueri kita. Penyortiran hanyalah mengatur ulang hasil kueri kita dengan cara tertentu. Penyortiran dapat dilakukan pada satu kolom atau lebih dari satu kolom. Ini dapat dilakukan pada tipe data angka, string, dan tanggal.
Apa itu ORDER BY di MySQL?
MySQL DIPESAN OLEH digunakan bersama dengan kueri SELECT untuk mengurutkan data secara teratur. Itu MySQL Klausa ORDER BY digunakan untuk mengurutkan kumpulan hasil kueri dalam urutan menaik atau menurun.
SELECT statement... [WHERE condition | GROUP BY `field_name(s)` HAVING condition] ORDER BY `field_name(s)` [ASC | DESC];
SINI
- "PILIH pernyataanâ € | â € adalah kueri pemilihan reguler
- ” | “ mewakili alternatif
- “[Kondisi MANA | KELOMPOK BERDASARKAN `nama_bidang` MEMILIKI kondisi” adalah kondisi opsional yang digunakan untuk memfilter kumpulan hasil kueri.
- "DIPESAN OLEH" melakukan penyortiran kumpulan hasil kueri
- “[ASC | DESK]” adalah kata kunci yang digunakan untuk mengurutkan kumpulan hasil dalam urutan menaik atau menurun. Catatan ASC digunakan sebagai default.
- PILIH {Nama Bidang | *} DARI Nama tabel adalah pernyataan yang berisi bidang dan tabel yang menjadi asal kumpulan hasil.
- [Kondisi MANA] bersifat opsional tetapi dapat digunakan untuk memfilter data sesuai dengan kondisi yang diberikan.
- DIPESAN OLEH nama bidang wajib diisi dan merupakan bidang tempat penyortiran dilakukan. Itu MySQL Kata kunci DESC menentukan bahwa pengurutan dilakukan dalam urutan menurun.
- [MEMBATASI] bersifat opsional tetapi dapat digunakan untuk membatasi jumlah hasil yang dikembalikan dari kumpulan hasil kueri.
Apa itu Kata Kunci DESC dan ASC?
ASC adalah kependekan dari ascending |
MySQL DESC adalah kependekan dari descending |
|---|---|
| Digunakan untuk mengurutkan hasil query dengan gaya atas ke bawah. | Digunakan untuk mengurutkan hasil query dengan gaya dari bawah ke atas |
| Saat mengerjakan tipe data tanggal, tanggal paling awal ditampilkan di bagian atas daftar. | . Saat mengerjakan tipe tanggal, tanggal terbaru ditampilkan di bagian atas daftar. |
| Saat bekerja dengan tipe data numerik, nilai terendah ditampilkan di bagian atas daftar. | Saat bekerja dengan tipe data numerik, nilai tertinggi ditampilkan di bagian atas kumpulan hasil kueri. |
| Saat bekerja dengan tipe data string, kumpulan hasil kueri diurutkan dari yang dimulai dengan huruf A hingga huruf Z. | Saat bekerja dengan tipe data string, kumpulan hasil kueri diurutkan dari yang dimulai dengan huruf Z hingga huruf A. |
Kata kunci SQL DESC dan ASC digunakan bersama dengan pernyataan SELECT dan MySQL klausa ORDER BY.
Sintaks DESC dan ASC
Kata kunci sort SQL DESC memiliki sintaksis dasar berikut.
SELECT {fieldName(s) | *} FROM tableName(s) [WHERE condition] ORDER BY fieldname(s) ASC /DESC [LIMIT N]
SINI
contoh:
Sekarang mari kita lihat contoh praktis –
SELECT * FROM members;
Menjalankan skrip di atas dalam MySQL workbench terhadap myflixdb memberi kita hasil seperti yang ditunjukkan di bawah ini.
| membership_number | full_names | gender | date_of_birth | physical_address | postal_address | contct_number | |
|---|---|---|---|---|---|---|---|
| 1 | Janet Jones | Female | 21-07-1980 | First Street Plot No 4 | Private Bag | 0759 253 542 | janetjones@yagoo.cm |
| 2 | Janet Smith Jones | Female | 23-06-1980 | Melrose 123 | NULL | NULL | jj@fstreet.com |
| 3 | Robert Phil | Male | 12-07-1989 | 3rd Street 34 | NULL | 12345 | rm@tstreet.com |
| 4 | Gloria Williams | Female | 14-02-1984 | 2nd Street 23 | NULL | NULL | NULL |
| 5 | Leonard Hofstadter | Male | NULL | Woodcrest | NULL | 845738767 | NULL |
| 6 | Sheldon Cooper | Male | NULL | Woodcrest | NULL | 976736763 | NULL |
| 7 | Rajesh Koothrappali | Male | NULL | Woodcrest | NULL | 938867763 | NULL |
| 8 | Leslie Winkle | Male | 14-02-1984 | Woodcrest | NULL | 987636553 | NULL |
| 9 | Howard Wolowitz | Male | 24-08-1981 | SouthPark | P.O. Box 4563 | 987786553 |
Misalkan departemen pemasaran ingin rincian anggota disusun berdasarkan tanggal lahir. Ini akan membantu mereka mengirimkan ucapan selamat ulang tahun tepat waktu. Kita bisa mendapatkan daftar tersebut dengan menjalankan kueri seperti di bawah ini –
SELECT * FROM members ORDER BY date_of_birth DESC;
Menjalankan skrip di atas dalam MySQL workbench terhadap myflixdb memberi kita hasil seperti yang ditunjukkan di bawah ini.
Kueri yang sama dalam urutan menaik
PILIH * DARI anggota DIPESAN BERDASARKAN tanggal_lahir_ASC
Catatan: Nilai NULL berarti tidak ada nilai (bukan nol atau string kosong). Amati cara mereka disortir.
Lebih contoh
Mari kita pertimbangkan skrip pengurutan SQL berikut yang mencantumkan semua rekaman anggota.
SELECT * FROM `members`;
Menjalankan skrip di atas akan memberikan hasil seperti yang ditunjukkan di bawah ini.
| membership_number | full_names | gender | date_of_birth | physical_address | postal_address | contct_number | |
|---|---|---|---|---|---|---|---|
| 1 | Janet Jones | Female | 21-07-1980 | First Street Plot No 4 | Private Bag | 0759 253 542 | janetjones@yagoo.cm |
| 2 | Janet Smith Jones | Female | 23-06-1980 | Melrose 123 | NULL | NULL | jj@fstreet.com |
| 3 | Robert Phil | Male | 12-07-1989 | 3rd Street 34 | NULL | 12345 | rm@tstreet.com |
| 4 | Gloria Williams | Female | 14-02-1984 | 2nd Street 23 | NULL | NULL | NULL |
| 5 | Leonard Hofstadter | Male | NULL | Woodcrest | NULL | 845738767 | NULL |
| 6 | Sheldon Cooper | Male | NULL | Woodcrest | NULL | 976736763 | NULL |
| 7 | Rajesh Koothrappali | Male | NULL | Woodcrest | NULL | 938867763 | NULL |
| 8 | Leslie Winkle | Male | 14-02-1984 | Woodcrest | NULL | 987636553 | NULL |
| 9 | Howard Wolowitz | Male | 24-08-1981 | SouthPark | P.O. Box 4563 | 987786553 | NULL |
Misalkan kita ingin mendapatkan daftar yang mengurutkan kumpulan hasil kueri menggunakan bidang gender, kita akan menggunakan skrip yang ditunjukkan di bawah ini.
SELECT * FROM `members` ORDER BY `gender`;
| membership_number | full_names | gender | date_of_birth | physical_address | postal_address | contct_number | |
|---|---|---|---|---|---|---|---|
| 1 | Janet Jones | Female | 21-07-1980 | First Street Plot No 4 | Private Bag | 0759 253 542 | janetjones@yagoo.cm |
| 2 | Janet Smith Jones | Female | 23-06-1980 | Melrose 123 | NULL | NULL | jj@fstreet.com |
| 4 | Gloria Williams | Female | 14-02-1984 | 2nd Street 23 | NULL | NULL | NULL |
| 3 | Robert Phil | Male | 12-07-1989 | 3rd Street 34 | NULL | 12345 | rm@tstreet.com |
| 5 | Leonard Hofstadter | Male | NULL | Woodcrest | NULL | 845738767 | NULL |
| 6 | Sheldon Cooper | Male | NULL | Woodcrest | NULL | 976736763 | NULL |
| 7 | Rajesh Koothrappali | Male | NULL | Woodcrest | NULL | 938867763 | NULL |
| 8 | Leslie Winkle | Male | 14-02-1984 | Woodcrest | NULL | 987636553 | NULL |
| 9 | Howard Wolowitz | Male | 24-08-1981 | SouthPark | P.O. Box 4563 | 987786553 | NULL |
Anggota “Perempuan” telah ditampilkan terlebih dahulu diikuti oleh anggota “Pria”, hal ini karena ketika klausa ORDER BY DESC digunakan tanpa menentukan ASC atau MySQL Kata kunci DESC, secara default, MySQL telah mengurutkan kumpulan hasil kueri dalam urutan menaik.
Sekarang mari kita lihat contoh yang melakukan hal tersebut pengurutan menggunakan dua kolom; yang pertama adalah diurutkan in urutan menaik secara default sedangkan kolom kedua adalah diurutkan in urutan menurun.
SELECT * FROM `members` ORDER BY `gender`,`date_of_birth` DESC;
Menjalankan skrip di atas dalam MySQL workbench terhadap myflixdb memberikan hasil berikut.
Kolom jenis kelamin diurutkan dalam urutan menaik secara default sedangkan kolom tanggal lahir diurutkan dalam urutan menurun secara eksplisit
Mengapa kami menggunakan DESC dan ASC?
Misalkan kita ingin mencetak riwayat pembayaran untuk anggota perpustakaan video untuk membantu menjawab pertanyaan dari meja depan, bukankah lebih logis jika pembayaran dicetak dalam urutan kronologis mulai dari pembayaran terakhir hingga pembayaran sebelumnya?
DESC dalam SQL adalah kata kunci yang berguna dalam situasi seperti itu. Kita dapat menulis query yang mengurutkan daftar dalam urutan menurun menggunakan tanggal pembayaran.
Misalkan departemen pemasaran ingin mendapatkan daftar film berdasarkan kategori yang dapat digunakan anggota untuk memutuskan film mana yang tersedia di perpustakaan saat menyewa film, bukankah lebih logis untuk melihat mengurutkan nama dan judul kategori film secara menaik sehingga anggota dapat dengan cepat mencari informasi dari daftar?
Kata kunci ASC berguna dalam situasi seperti ini; kita bisa mengurutkan daftar film berdasarkan nama kategori dan judul film dalam urutan menaik.
Ringkasan
- Pengurutan hasil kueri adalah menata ulang baris-baris yang dikembalikan dari kumpulan hasil kueri baik dalam urutan menaik atau menurun.
- Kata kunci DESC dalam SQL, digunakan untuk mengurutkan kumpulan hasil kueri dalam urutan menurun.
- Kata kunci ASC digunakan untuk mengurutkan kumpulan hasil kueri dalam urutan menaik.
- Baik DESC dan ASC bekerja bersama dengan kata kunci ORDER BY. Mereka juga dapat digunakan dalam kombinasi dengan kata kunci lain seperti klausa WHERE dan BATAS
- Default untuk ORDER BY ketika tidak ada yang ditentukan secara eksplisit adalah ASC.

ASC adalah kependekan dari ascending
MySQL DESC adalah kependekan dari descending

