‫Instruktur: Meminta data dalam database adalah
‫salah satu operasi terpenting yang kita miliki dalam database.
‫Jadi, sekarang mari kita lihat beberapa operator kueri di
‫MongoDB, dimulai dengan beberapa yang sederhana dan
‫kemudian beralih ke beberapa kueri yang sangat kompleks.
‫Dan, untuk memulai, mari beri diri kita ruang di sini.
‫Jadi, Anda sudah tahu, cara termudah untuk
‫menanyakan semua dokumen dalam koleksi tertentu
‫pada dasarnya adalah dengan menggunakan find tanpa melewatkan
‫apa pun di sana.
‫Jadi, itulah yang kami lakukan sampai saat ini.
‫Jadi, itu memberi kita hasil ini
‫dengan semua dokumen
‫yang ada dalam koleksi tertentu
‫pada dasarnya tanpa kriteria pencarian apa pun.
‫Tapi, sekarang, katakanlah kita sebenarnya hanya ingin satu tur dan
‫kita sudah tahu namanya.
‫Jadi, kami dapat mencari
‫tur itu menggunakan nama yang kami tahu.
‫Jadi, kami kami db. wisata dan, sekali lagi,
‫temukan.
‫Tapi, kali ini, kita akan memasukkan objek filter.
‫Jadi, sekali lagi, kita membutuhkan objek di sini.
‫Jadi, sekarang Anda mulai melihat bahwa
‫di MongoDB, semuanya benar-benar berfungsi dengan objek.
‫Dan, ini akan lebih menonjol sedikit kemudian dalam
‫kuliah ini.
‫Jadi, di dalam objek ini, kami melewati filter.
‫Jadi, pada dasarnya
‫kriteria pencarian yang ingin kita cari.
‫Jadi, kita cukup mengatur nama tersebut menjadi nama
‫wisata yang ingin kita cari.
‫Jadi, katakanlah The Forest Hiker.
‫Dan, itu sebenarnya.
‫Nah itulah kriteria pencarian atau filter pencarian kita.
‫Dan, jika kami
‫kembali sekarang, maka kami hanya mendapatkan
‫satu tur yang namanya sama persis dengan yang kami lewati.
‫Dan, tentu saja, kita bisa melakukan hal yang sama untuk hal lain.
‫Misalnya untuk yang kesulitan,
‫kita bisa mencari wisata yang memiliki tingkat kesulitan
‫yang mudah.
‫Jadi, kesulitan dan mudah.
‫Tutup objek, tutup fungsinya.
‫Jadi, kami mendapatkan semua tur di mana kesulitannya mudah.
‫Saat ini, hanya ada satu tur, tetapi
‫jika kami memiliki beberapa tur dengan kesulitan yang
‫diatur menjadi mudah,
‫maka, tentu saja, itu akan mengembalikan semua dokumen ini.
‫Nah, itulah cara termudah yang
‫bisa kita lakukan untuk mencari dokumen.
‫Sekarang, mari kita bawa ke level
‫berikutnya dengan menggunakan beberapa operator kueri khusus.
‫Dan, yang ingin saya lakukan adalah mencari
‫tur yang harganya di bawah 500.
‫Dan, cara kerjanya seperti ini.
‫Jadi, kami selalu menggunakan db. Nama koleksi. Temukan.
‫Dan kemudian, sekali lagi, atau filter objek.
‫Jadi, ingat, saya ingin mencari harga, jadi
‫saya katakan harga.
‫Dan sekarang, saya ingin semua tur dengan harga di bawah 500.
‫Jadi, bagaimana saya melakukannya?
‫Yah, saya perlu menggunakan kurang dari operator dan
‫berfungsi seperti ini.
‫Kita perlu mendefinisikan objek baru
‫di mana kita mengatur properti lte menjadi 500, lalu
‫menutup objek
‫itu, dan kemudian menutup objek harga pertama
‫itu dan kemudian menutup fungsinya.
‫Jadi, itu terlihat sangat aneh, saya tahu,
‫tapi beginilah cara kami menggunakan operator kueri di MongoDB.
‫Jadi, sekali lagi, lte berarti kurang dari karena
‫itulah yang kami cari.
‫Dimana harganya kurang dari 500.
‫Dan, tanda khusus ini di sini disediakan
‫di MongoDB untuk operatornya.
‫Jadi, setiap kali Anda melihat tanda dolar ini di MongoDB,
‫Anda tahu bahwa itu adalah operator Mongo.
‫Jadi, bagian yang paling aneh
‫di sini mungkin adalah bahwa kita harus melakukannya
‫di dalam objek baru, tetapi jika Anda memikirkannya, itu sebenarnya
‫satu-satunya cara untuk menentukan bahwa harganya tidak hanya 500, tetapi sesuatu
‫yang lain.
‫Jadi, kita harus menetapkan harga ke sesuatu yang lain dari 500.
‫Dan, cara terbaik adalah
‫dengan menggunakan objek lain di sana.
‫Jadi, begitulah cara kerja MongoDB.
‫Jadi, mari kita coba ini sekarang, tekan kembali.
‫Dan memang, kami mendapatkan
‫dua dokumen kami di mana harga properti di bawah 500.
‫Bagus, selanjutnya, mari kita
‫cari dua kriteria pencarian sekaligus.
‫Jadi, yang ingin saya lakukan selanjutnya adalah mencari dokumen
‫yang harganya kurang atau sama dengan 500, yang sudah kita
‫miliki di sini, tetapi juga,
‫pada saat yang sama, peringkatnya lebih besar atau sama
‫dengan 4. 8.
‫Jadi, itu seharusnya memberi kita hanya tur ini di sini.
‫Jadi, hanya yang
‫ini karena ini adalah satu-satunya yang memiliki harga di bawah 500
‫dan peringkatnya sama atau lebih besar dari 4. 8.
‫Jadi, itu 4. 8 dan itu adalah
‫salah satu yang harus cocok dengan kueri kami.
‫Jadi, mari kita bersihkan untuk menghilangkan beberapa kebingungan.
‫Sekarang, saya ingin hasil ini
‫di sini sehingga kita dapat membandingkannya dengan hasil berikutnya.
‫Jadi, sekarang mari kita tuliskan kueri yang baru saja saya jelaskan.
‫Jadi, temukan dan, sekali lagi, yang satu ini akan
‫sama saja.
‫Jadi, kami ingin harganya kurang atau sama dengan 500.
‫Atau, kita sebenarnya bisa mengatakan kurang dari 500.
‫Jadi, lte kurang dari atau sama dengan dan lt lebih kecil dari.
‫Jadi, ini adalah bagian pertama, harganya kurang dari 500.
‫Dan, pada saat yang sama, kami ingin peringkat lebih besar atau
‫sama dengan 4. 8.
‫Dan, itu mudah.
‫Yang harus kita lakukan adalah menentukan bidang kedua di
‫objek filter kita.
‫Jadi, pertama, harga dan sekarang peringkat.
‫Jadi, kami ingin peringkatnya dan
‫Anda mungkin bisa menebaknya,
‫lebih besar dari atau sama dengan 4. 8.
‫Sekarang, tutup objek filter ini dan tutup fungsinya.
‫Jadi, mari kita uji.
‫Dan, memang, itu memberi kami hasil yang kami harapkan.
‫Jadi, satu-satunya dokumen di mana kedua kriteria pencarian di
‫sini benar secara bersamaan.
‫Jadi, rekapnya saja, ketika kita ingin mencari
‫dua kriteria sekaligus, yang pada
‫dasarnya adalah an dan query, maka harganya kurang
‫dari 500, dan ratingnya lebih besar atau sama dengan
‫4. 8.
‫Nah, satu-satunya hal yang harus
‫kita lakukan adalah menentukan dua bidang di objek filter.
‫Dan, saya tahu ini terlihat cukup membingungkan.
‫Saya merasakan hal yang sama ketika saya mempelajari hal ini, tetapi
‫saya harap Anda masih dapat
‫mengikuti saya sehingga kami sekarang dapat benar-benar membawanya bahkan satu tingkat lebih jauh.
‫Jadi, di sini, kami melakukan an dan query.
‫Jadi, melakukan kueri untuk dokumen di mana kedua
‫kondisi ini benar, tetapi sekarang mari kita lakukan kueri atau.
‫Jadi, pada dasarnya mencari semua dokumen
‫di mana bagian ini benar atau
‫bagian ini benar.
‫Jadi, db. wisata. temukan dan mari
‫kita tutup di sini
‫karena ini akan menjadi lebih membingungkan.
‫Jadi, kita ingin melakukan sebuah or query dan cara
‫kerjanya dengan operator MongoDB adalah seperti ini.
‫Kami mengatakan atau dan kemudian di sini, kami menentukan array.
‫Dan, dalam larik ini, kita kemudian akan menempatkan dua kondisi di
‫mana kita ingin salah satunya benar.
‫Jadi, sekali lagi, saya tahu ini
‫terlihat membingungkan, tetapi mari kita tulis sekarang dan saya akan menjelaskannya lagi
‫ketika kita sudah melakukannya.
‫Jadi, syarat pertama adalah harga
‫harus kurang dari 500.
‫Jadi, pada dasarnya sama seperti sebelumnya.
‫Jadi, itu adalah objek pertama.
‫Jadi, semua ini, jadi kondisi pertama, pada
‫dasarnya filter pertama, dan kemudian
‫yang kedua.
‫Jadi, peringkatnya harus, sama seperti sebelumnya, lebih besar
‫atau sama dengan 4. 8.
‫Tutup yang ini dan tutup yang ini.
‫Dan, itu sebenarnya sudah itu.
‫Jadi, sekali lagi, untuk rekap di sini, kita mulai dengan operator
‫or dan operator or menerima array kondisi.
‫Jadi, itulah mengapa kami kemudian membuat array ini di
‫sini dan array ini kemudian akan
‫berisi satu objek untuk setiap filter kami pada dasarnya.
‫Jadi, kami ingin yang ini benar atau
‫yang ini.
‫Jadi, mari kita coba lihat seperti apa hasilnya nanti.
‫Jadi, sebenarnya kami mendapatkan ketiga tur tersebut.
‫Jadi, mari kita analisis mengapa demikian.
‫Jadi, yang pertama memiliki harga kurang dari 500.
‫Jadi, itulah mengapa itu dimasukkan di sini.
‫Itu tidak memiliki peringkat lebih besar atau sama dengan 4. 8,
‫jadi hanya 4. 7, tetapi karena kita melakukan sebuah
‫atau query di sini, hanya satu kondisi yang harus benar.
‫Jadi, itulah mengapa dokumen ini dipilih dan
‫disertakan dalam output kami.
‫Selanjutnya, yang satu ini juga memiliki harga kurang atau sama dengan 500 dan juga,
‫pada saat yang sama, memiliki peringkat besar atau sama
‫dengan 4. 8.
‫Jadi, itu dimasukkan sebenarnya
‫karena keduanya benar.
‫Kemudian, yang terakhir tidak memiliki harga kurang dari 500, tetapi memiliki peringkat lebih
‫besar atau sama dengan 4. 8.
‫Jadi, sekali lagi, salah satu dari dua kondisi tersebut
‫benar dan karena kami melakukan atau query,
‫tur ini juga disertakan.
‫Jadi, mari kita selesaikan ini
‫dan hanya satu lagi, yang akan serupa.
‫Aku hanya akan berubah dari kurang dari menjadi lebih besar dari.
‫Dan, apa yang saya ingin
‫Anda lakukan sekarang adalah menebak output yang satu
‫ini berdasarkan hasil sebelumnya.
‫Nah, sudah bisa menebak seperti apa hasilnya?
‫Jadi, mari kita lihat.
‫Jadi, sekarang, memang, kami tidak lagi memiliki ketiga tur, tetapi
‫hanya tur kedua dan ketiga karena, ingat,
‫tur pertama harganya kurang dari
‫500 dan juga peringkatnya kurang dari
‫4. 8.
‫Jadi, tidak ada kondisi yang berlaku
‫dan tidak lagi disertakan.
‫Hanya yang kedua dan ketiga,
‫yang sekarang harganya juga tidak lebih dari 500, tetapi memiliki
‫peringkat 4. 8
‫dan masih disertakan.
‫Dan, yang terakhir, tentu saja, semuanya benar dan, tentu
‫saja, itu juga ada di sini.
‫Hanya satu hal lagi yang ingin saya
‫tunjukkan di sini adalah selain objek filter kita, jadi
‫yang ini, kita juga bisa melewatkan objek untuk proyeksi.
‫Jadi, yang dimaksud proyeksi adalah kita
‫hanya ingin memilih beberapa bidang dalam output.
‫Jadi, izinkan saya menunjukkannya kepada Anda dan itu sangat sederhana.
‫Yang harus kita lakukan adalah, misalnya, ucapkan nama sama dengan satu.
‫Jadi, ini berarti bahwa kita hanya ingin nama
‫berada di output dan itulah mengapa kita menetapkan nama menjadi satu.
‫Semua yang lain tidak akan muncul dalam kasus ini.
‫Jadi, izinkan saya menunjukkan itu kepada Anda.
‫Dan, memang, kami hanya memiliki
‫nama dan tidak lagi semua properti lainnya.
‫Dan, ini bisa sangat berguna dalam beberapa kasus.
‫Idenya, tentu saja, juga muncul, tapi
‫itu selalu ada.
‫Tidak ada cara untuk menghilangkan itu.
‫Oke, keren.
‫Jadi, saya pikir tujuan utama dari kuliah ini sekarang tercapai,
‫yang pada dasarnya adalah untuk
‫membuat Anda terbiasa dengan cara kami melakukan kueri
‫di MongoDB dan juga menunjukkan kepada Anda operator MongoDB kompleks yang kami
‫miliki di sini.
‫Untuk beberapa alasan, saya tidak dapat memilihnya, tetapi
‫Anda tahu apa yang saya maksud.
‫Jadi, kami memiliki lebih dari,
‫kami memiliki atau, dan kami masih memiliki
‫banyak operator lain.
‫Jadi, ini hanya
‫permukaannya saja, tetapi selama kursus, Anda
‫tentu saja akan mengenal beberapa operator lain.
‫Jadi, ini hanya untuk membuat
‫Anda terbiasa, membantu Anda memulai kueri di MongoDB.
‫Dan, saya pikir dalam kuliah ini, kami berhasil melakukannya.