0Pricing
SQL Academy · Pelajaran

ORDER BY untuk Satu dan Banyak Kolom

Urutkan hasil secara menaik atau menurun, urutkan berdasarkan beberapa kolom, dan tentukan posisi NULL dengan NULLS FIRST / NULLS LAST.

ORDER BY untuk Satu dan Banyak Kolom adalah pelajaran SQL Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar SQL Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus SQL Academy mencakup 4 pelajaran total.

Mengapa Anda Memerlukan ORDER BY

Tabel SQL adalah kumpulan yang tidak berurutan. Tanpa ORDER BY, basis data dapat mengembalikan baris dalam urutan apa pun — dan urutan tersebut dapat berubah antarpemanggilan. Jika urutan penting dalam antarmuka pengguna atau laporan Anda, lakukan pengurutan secara eksplisit.

Mengurutkan Berdasarkan Satu Kolom

Pengurutan bawaan adalah menaik:

SELECT id, email FROM users ORDER BY created_at;       -- oldest first
SELECT id, email FROM users ORDER BY created_at ASC;
SELECT id, email FROM users ORDER BY created_at DESC;  -- newest first

Mengurutkan Berdasarkan Beberapa Kolom

Daftarkan kolom berdasarkan urutan prioritas. Kolom kedua menyelesaikan kesamaan pada kolom pertama:

SELECT first_name, last_name, age
FROM users
ORDER BY last_name ASC, first_name ASC, age DESC;

Mengurutkan Berdasarkan Ekspresi

Anda dapat mengurutkan berdasarkan ekspresi apa pun:

SELECT email, full_name
FROM users
ORDER BY LENGTH(email) DESC, email ASC;

Mengurutkan Berdasarkan Alias atau Posisi

Anda dapat merujuk alias dalam daftar SELECT atau posisinya yang dimulai dari 1:

SELECT id, total * 0.9 AS discounted
FROM orders
ORDER BY discounted DESC;     -- by alias

SELECT id, total
FROM orders
ORDER BY 2 DESC;               -- by position (avoid in code — fragile)

NULLS FIRST / NULLS LAST

Atur posisi NULL:

-- Default: NULLs LAST when ASC, FIRST when DESC
SELECT * FROM users ORDER BY last_login_at DESC NULLS LAST;
SELECT * FROM users ORDER BY last_login_at ASC  NULLS FIRST;

Pengurutan Stabil dan Pemecah Kesamaan

Jika beberapa baris memiliki kunci pengurutan yang sama, basis data dapat mengembalikannya dalam urutan apa pun. Tambahkan kunci utama sebagai pemecah kesamaan untuk mendapatkan hasil yang deterministik:

SELECT * FROM orders
ORDER BY created_at DESC, id DESC;

ORDER BY dan Indeks

Jika terdapat indeks pada kolom ORDER BY, basis data dapat membaca baris secara berurutan tanpa langkah pengurutan.

-- With index on created_at DESC, this can use the index directly:
SELECT * FROM events ORDER BY created_at DESC LIMIT 100;

CASE dalam ORDER BY

Pengurutan khusus dengan CASE:

-- Show priority orders first:
SELECT * FROM orders
ORDER BY
  CASE status
    WHEN 'urgent'   THEN 0
    WHEN 'normal'   THEN 1
    ELSE 2
  END,
  created_at DESC;

ORDER BY Berjalan Setelah WHERE

ORDER BY bekerja pada hasil WHERE/GROUP BY/HAVING. Penyaringan terjadi terlebih dahulu, kemudian pengurutan.

Jangan Mengurutkan Tabel Besar Tanpa LIMIT

Mengurutkan hasil yang terdiri dari satu miliar baris membutuhkan biaya besar. Jika Anda hanya memerlukan N teratas, tambahkan LIMIT — perencana dapat beralih ke strategi Top-N.

SELECT * FROM events ORDER BY created_at DESC LIMIT 50;

Ringkasan

ORDER BY membuat hasil menjadi deterministik.

  • ASC / DESC untuk setiap kolom
  • Beberapa kolom sebagai pemecah kesamaan
  • NULLS FIRST / LAST jika relevan
  • Selalu pasangkan pengurutan besar dengan LIMIT

Pemeriksaan Singkat

Apa arah pengurutan bawaan dalam SQL?

Pertanyaan yang Sering Diajukan

Apakah pelajaran “ORDER BY untuk Satu dan Banyak Kolom” gratis?

Ya — teks lengkap “ORDER BY untuk Satu dan Banyak Kolom” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus SQL Academy, upgrade ke CoddyKit PRO. Kursus SQL Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “ORDER BY untuk Satu dan Banyak Kolom”?

Urutkan hasil secara menaik atau menurun, urutkan berdasarkan beberapa kolom, dan tentukan posisi NULL dengan NULLS FIRST / NULLS LAST. Kamu berlatih SQL Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai SQL Academy?

Tidak diperlukan pengalaman sebelumnya. SQL Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “ORDER BY untuk Satu dan Banyak Kolom” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran SQL Academy ini?

Ya. Setiap pelajaran SQL Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Memilih Kolom dan Ekspresi
  2. Penyaring WHERE: Operator Perbandingan dan Logika
  3. ORDER BY untuk Satu dan Banyak Kolom
  4. LIMIT, OFFSET, dan Dasar Paginasi
← Kembali ke SQL Academy