Panduan Pemula Mengenai Pengurutan Dalam MongoDB Menggunakan Node.js

Hai, para pemrogram masa depan! Hari ini, kita akan memulai perjalanan menarik ke dunia pengurutan MongoDB dengan Node.js. Sebagai guru komputer yang ramah di lingkungan sekitar Anda, saya di sini untuk memandu Anda melalui petualangan ini, langkah demi langkah. Jangan khawatir jika Anda belum pernah menulis baris kode sebelumnya - kita akan mulai dari awal dan belajar bersama-sama.

Node.js - MongoDB Sort

Apa Itu Pengurutan MongoDB?

Sebelum kita masuk ke kode, mari kita pahami apa yang dimaksudkan dengan pengurutan dalam konteks MongoDB. Bayangkan Anda memiliki kotak besar yang penuh dengan batu blok Lego berwarna-warni, dan Anda ingin mengatur mereka menurut warna atau ukuran. Itu sebenarnya apa yang kita lakukan dengan data di MongoDB - mengaturnya dalam urutan tertentu yang cocok untuk kebutuhan kita.

Menyiapkan Lingkungan Kerja

Pertama-tama, kita perlu mengatur lingkungan Node.js dan menghubungkan ke MongoDB. Jangan khawatir, saya akan memandu Anda melalui setiap langkah!

  1. Instal Node.js dari situs web resmi jika Anda belum menginstalnya.
  2. Buat direktori baru untuk proyek Anda dan navigasikan ke dalamnya di terminal.
  3. Jalankan npm init -y untuk membuat file package.json.
  4. Install driver MongoDB dengan menjalankan npm install mongodb.

Sekarang, mari kita buat file baru bernama app.js dan tambahkan kode berikut:

const { MongoClient } = require('mongodb');

// URL Koneksi
const url = 'mongodb://localhost:27017';

// Nama Database
const dbName = 'myProject';

// Buat MongoClient baru
const client = new MongoClient(url);

// Hubungkan ke server
async function connect() {
try {
await client.connect();
console.log('Berhasil terhubung ke server');
const db = client.db(dbName);
return db;
} catch (error) {
console.error('Gagal terhubung ke MongoDB:', error);
}
}

// Ekspor fungsi connect
module.exports = { connect };

Kode ini mengatur koneksi kami ke MongoDB. Kita menggunakan localhost di sini, tetapi dalam kasus dunia nyata, Anda akan menggantinya dengan alamat server MongoDB Anda sebenarnya.

Memasukkan Data Contoh

Sebelum kita dapat mengurutkan apa-apa, kita butuh beberapa data untuk bekerja. Mari kita masukkan beberapa dokumen ke dalam koleksi yang disebut fruits. Tambahkan fungsi ini ke app.js Anda:

async function insertSampleData(db) {
const collection = db.collection('fruits');
const fruits = [
{ name: 'Apple', color: 'Red', price: 0.5 },
{ name: 'Banana', color: 'Yellow', price: 0.3 },
{ name: 'Orange', color: 'Orange', price: 0.6 },
{ name: 'Kiwi', color: 'Green', price: 0.8 },
{ name: 'Grape', color: 'Purple', price: 1.0 }
];

const result = await collection.insertMany(fruits);
console.log(`${result.insertedCount} dokumen telah dimasukkan`);
}

Fungsi ini membuat koleksi buah-buahan dengan namanya, warnanya, dan harga. Itu seperti mengisi toko buah virtual kita!

Pengurutan Dalam MongoDB

Sekarang kita memiliki data, mari belajar bagaimana mengurutkannya. Dalam MongoDB, kita menggunakan metode sort() untuk mengatur dokumen kita. Metode sort() mengambil objek sebagai argumen, di mana kunci-kunci adalah bidang yang akan diurutkan, dan nilai-nilai menentukan urutan pengurutan.

Pengurutan Naik

Mari kita mulai dengan mengurutkan buah-buahan kita dalam urutan naik menurut harga. Tambahkan fungsi ini ke app.js Anda:

async function sortAscending(db) {
const collection = db.collection('fruits');
const cursor = collection.find().sort({ price: 1 });

console.log("Buah-buahan diurutkan menurut harga (naik):");
await cursor.forEach(doc => {
console.log(`${doc.name}: $${doc.price}`);
});
}

Dalam fungsi ini, kita menggunakan sort({ price: 1 }) untuk mengurutkan buah-buahan menurut harga dalam urutan naik. Angka 1 berarti naik, seperti menghitung dari 1, 2, 3...

Pengurutan Turun

Sekarang, mari kita urutkan buah-buahan kita dalam urutan turun menurut nama. Tambahkan fungsi ini:

async function sortDescending(db) {
const collection = db.collection('fruits');
const cursor = collection.find().sort({ name: -1 });

console.log("Buah-buahan diurutkan menurut nama (turun):");
await cursor.forEach(doc => {
console.log(doc.name);
});
}

Di sini, kita menggunakan sort({ name: -1 }) untuk mengurutkan buah-buahan menurut nama dalam urutan turun. Angka -1 berarti turun, seperti menghitung mundur 3, 2, 1...

Menggabungkan Semua

Mari kita buat fungsi utama untuk menjalankan semua operasi kita:

async function main() {
const db = await connect();
await insertSampleData(db);
await sortAscending(db);
await sortDescending(db);
await client.close();
}

main().catch(console.error);

Fungsi ini menghubungkan ke database, memasukkan data contoh, melakukan kedua pengurutan, dan kemudian menutup koneksi.

Menjalankan Kode

Untuk menjalankan kode Anda, simpan file app.js Anda dan eksekusikannya menggunakan Node.js:

node app.js

Anda seharusnya melihat output yang menunjukkan buah-buahan diurutkan menurut harga (naik) dan menurut nama (turun).

Tabel Metode Pengurutan

Berikut adalah tabel praktis yang menggabungkan metode pengurutan yang kita pelajari:

Metode Deskripsi Contoh
sort({ field: 1 }) Urutkan dalam urutan naik collection.find().sort({ price: 1 })
sort({ field: -1 }) Urutkan dalam urutan turun collection.find().sort({ name: -1 })

Kesimpulan

Selamat! Anda baru saja belajar bagaimana mengurutkan data di MongoDB menggunakan Node.js. Ingat, pengurutan adalah seperti mengatur batu blok Lego - itu membantu Anda menemukan apa yang Anda butuhkan saat Anda membutuhkannya. Sebagai Anda terus melanjutkan perjalanan pemrograman Anda, Anda akan menemukan bahwa pengaturan data efisien sangat penting dalam membuat aplikasi kuat.

Terus latihan, dan jangan takut untuk mencoba pengurutan berbeda. Mungkin cobalah mengurutkan menurut warna, atau gabungkan beberapa bidang dalam pengurutan Anda. Semakin banyak Anda bermain dengan konsep ini, semakin nyaman Anda akan merasanya.

Selamat coding, dan semoga data Anda selalu diurutkan sempurna!

Credits: Image by storyset