Pengurutan Data Di MySQL Dengan ORDER BY
Pengurutan Data Di MySQL Dengan ORDER BY - Pada kesempatan ini saya akan menjelaskan cara menggunakan ORDER BY dalam query MySQL. ORDER BY adalah perintah yang digunakan untuk mengurutkan hasil query berdasarkan satu atau lebih kolom dalam database. Dengan perintah ini, kita bisa mengurutkan data dalam urutan ascending (menaik) atau descending (menurun). Mari kita bahas lebih lanjut!
Apa Itu ORDER BY dalam MySQL?
ORDER BY digunakan dalam perintah SELECT untuk mengatur hasil query dalam urutan tertentu. Secara default, hasil query akan ditampilkan dalam urutan yang tidak teratur. Dengan ORDER BY, kita dapat mengontrol bagaimana data ditampilkan.
Sintaks dasar ORDER BY:
SELECT * FROM nama_tabel ORDER BY nama_kolom [ASC|DESC];
Keterangan:
- ASC (Ascending) → Urutan menaik (default)
- DESC (Descending) → Urutan menurun
Contoh Penggunaan ORDER BY
Berikut ini adalah cara penggunaan ORDER BY beserta contoh data studi kasusnya.
Contoh Data:
CREATE TABLE pelanggan (
id INT AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL,
no_telp VARCHAR(15) NOT NULL,
kota VARCHAR(50),
umur VARCHAR(50)
);
INSERT INTO pelanggan (nama, email, no_telp, kota, umur) VALUES
('Andi Saputra', 'andi@email.com', '08123456780', 'Jakarta','30'),
('Siti Rahmawati', 'siti@email.com', '08123456781', 'Bandung','20'),
('Rudi Hartono', 'rudi@email.com', '08123456782', 'Surabaya','15'),
('Dewi Anggraini', 'dewi@email.com', '08123456783', 'Yogyakarta','33'),
('Agus Pratama', 'agus@email.com', '08123456784', 'Medan','24');
1. Mengurutkan Data dalam Urutan Menaik (ASC)
Misalkan kita memiliki tabel pelanggan dengan kolom id, nama, dan umur. Jika kita ingin mengurutkan pelanggan berdasarkan nama dalam urutan alfabetis, kita bisa menggunakan query berikut:
Contoh:
SELECT * FROM pelanggan ORDER BY nama ASC;
Hasil:
Hasilnya, nama pelanggan akan diurutkan dari A-Z.
2. Mengurutkan Data dalam Urutan Menurun (DESC)
Jika kita ingin mengurutkan pelanggan berdasarkan umur dari yang tertua ke yang termuda:
Contoh:
SELECT * FROM pelanggan ORDER BY umur DESC;
Hasil:
Hasilnya, pelanggan dengan umur tertinggi akan ditampilkan lebih dulu.
3. Mengurutkan Berdasarkan Lebih dari Satu Kolom
Kita juga bisa mengurutkan berdasarkan lebih dari satu kolom. Misalnya, jika ingin mengurutkan pelanggan berdasarkan kota dalam urutan alfabetis, lalu berdasarkan nama dalam urutan menaik:
Contoh:
SELECT * FROM pelanggan ORDER BY kota ASC, nama ASC;
Hasil:
Hasilnya, pelanggan akan dikelompokkan berdasarkan kota, dan dalam kota yang sama, mereka akan diurutkan berdasarkan nama.
4. Mengurutkan dengan WHERE
Kita bisa menggabungkan ORDER BY dengan WHERE untuk mengambil data tertentu lalu mengurutkannya.
Contoh:
SELECT * FROM pelanggan WHERE kota = 'Jakarta' ORDER BY umur DESC;
Hasil:
Query ini akan mengambil pelanggan yang berasal dari Jakarta dan mengurutkan mereka berdasarkan umur dari yang tertua ke yang termuda.
Baca Juga: Perintah dasar MySQL: SELECT, INSERT, UPDATE, DELETE
5. Menggunakan ORDER BY dengan LIMIT
Jika ingin menampilkan hanya beberapa hasil setelah diurutkan, kita bisa menggunakan LIMIT. Contoh, menampilkan 5 pelanggan termuda:
Contoh:
SELECT * FROM pelanggan ORDER BY umur ASC LIMIT 2;
Hasil:
Hasilnya, hanya 2 pelanggan termuda yang akan ditampilkan.
Kesimpulan
Perintah ORDER BY sangat berguna untuk mengatur urutan tampilan data di MySQL. Dengan menggunakan ASC atau DESC, kita dapat mengurutkan data sesuai kebutuhan. Kita juga bisa menggabungkan ORDER BY dengan WHERE dan LIMIT untuk hasil yang lebih spesifik.
Dengan memahami cara kerja ORDER BY, kita dapat mengelola database dengan lebih efektif dan menyajikan data dengan cara yang lebih terstruktur. Selamat belajar MySQL!