دوره‌ای که می‌تونه مسیر شغلیت رو عوض کنه! دوره‌ای که می‌تونه مسیر شغلیت رو عوض کنه!
🎯 ثبت نام

آموزش جستجو نتایج مورد نظر ( Query ) در MongoDB Node.js

آموزش جستجو نتایج مورد نظر ( Query ) در Node.js MongoDB :

پس از جستجو و پیدا کردن رکوردها از یک مجوعه ( Collection ) در یک پایگاه داده MongoDB، می توانید نتایج خروجی را بر حسب اطلاعات مورد نیازتان ، فیلتر نمایید.
همانطور که در بخش های قبلی اشاره کردیم، پارامتر اول متد find() ، یک شی جستجو ( Query Object ) است که در آن می توانید شرایط مورد نظر خود را تعیین کرده و نتایج خروجی را بر حسب نیاز، فیلتر نمایید.

مثال عملی :

مثال : در کد مثال زیر توسط یک شی MongoClient به پایگاه داده "mydb" متصل شده ایم.
سپس با تعیین پارامتر جستجو در متغیر query ، از متد find خواسته شده تا اطلاعات کلیه فیلدهای رکوردی در جدول "customers" که مقدار فیلد address آن برابر "Park Lane 38" است را در خروجی نمایش دهد :

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  var query = { address: "Park Lane 38" };
  dbo.collection("customers").find(query).toArray(function(err, result) {
    if (err) throw err;
    console.log(result);
    db.close();
  });
});
            

کد مثال فوق را در فایل "demo_mongodb_query.js" ذخیره کرده و با دستور زیر، آن را اجرا نمایید :

C:\Users\Your Name>node demo_mongodb_query.js
            

برنامه پس از اجرای موفقیت آمیز دستور فوق، اطلاعات رکورد هدف را نمایش می دهد:

[
  { _id: 58fdbf5c0ef8a50b4cdd9a8e , name: 'Ben', address: 'Park Lane 38' }
]
            

آموزش فیلتر کردن نتایج جستجو با Regular Expression در MongoDB :

شما می توانید از فرمت های خاص جستجو یا Regular Experssion برای پیدا کردن دقیق نتایج مورد نظرتان در MongoDB ، استفاده نمایید.

هشدار :

Regular Expression فقط بر روی فایل و جستجو های متنی ( Strings ) ، قابل اجرا هستند.

مثال عملی :

در کد مثال عملی زیر، با استفاده از یک فرمت خاص ، می خواهیم فقط اطلاعات مشتریانی را نمایش دهیم که آدرس آنها ( فیلد address ) با حرف "s" شروع می شود.
برای این منظور از عبارت /^S/ به عنوان پارامتر دوم متد find ، استفاده کرده ایم :

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  var query = { address: /^S/ };
  dbo.collection("customers").find(query).toArray(function(err, result) {
    if (err) throw err;
    console.log(result);
    db.close();
  });
});
            

کد مثال فوق را در فایل "demo_mongodb_query_s.js" ذخیره کرده و با دستور زیر، آن را اجرا نمایید :

C:\Users\Your Name>node demo_mongodb_query_s.js
            

برنامه مقادیر رکوردهای مورد نظر را به صورت زیر نشان خواهد داد :

[
  { _id: 58fdbf5c0ef8a50b4cdd9a8b , name: 'Richard', address: 'Sky st 331' },
  { _id: 58fdbf5c0ef8a50b4cdd9a91 , name: 'Viola', address: 'Sideway 1633' }
]
            
1398/04/12 1816 0
نظرات شما

نظرات خود را ثبت کنید...