MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

नेवला कैसे अगर शर्त के साथ एक प्रश्न लिखने के लिए?

आप अपने क्वेरी पैरामीटर के आधार पर गतिशील रूप से json दस्तावेज़ बनाने के लिए जावास्क्रिप्ट का उपयोग कर सकते हैं।

आपका अपडेट किया गया फ़ंक्शन कुछ इस तरह दिखेगा

post.getSpecificDateRangeJobs = function(queryData, callback) {

  var matchCriteria = queryData.matchCriteria;
  var currentDate = new Date();

  // match document
  var match = {
    "expireDate": {
      "$gte": currentDate 
    }
  };

  if (matchCriteria !== "") {
    match["$text"]: {
      "$search": matchCriteria
    }
  };

  // group document
  var group = {
    _id: null
  };

  // Logic to calculate hours difference between current date and publish date is less than 30 hours.

  if (queryData.dateGroups.thirtyHourAgo) {
    group["thirtyHourAgo"] = {
      "$sum": {
        "$cond": [{
            "$lte": [{
              "$divide": [{
                "$subtract": [currentDate, "$publishDate"]
              }, 1000 * 60 * 60]
            }, 30]
          },
          1,
          0
        ]
      }
    };
  }

  // Similarly add more grouping condition based on query params.

  var postsCollection = post.getDataSource().connector.collection(
    post.modelName
  );

  // Use aggregate builder to create aggregation pipeline.

  postsCollection.aggregate()
    .match(match)
    .group(group)
    .exec(function(err, groupByRecords) {
      if (err) {
        return callback("err");
      }
      return callback(null, groupByRecords);
    });

};


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB के साथ एक सरणी फ़ील्ड के अंदर एक विशिष्ट कुंजी/मान अपडेट कर रहा है

  2. नेवला से संग्रह की एक सूची प्राप्त करने की कोशिश कर रहा

  3. MongoDB में जावास्क्रिप्ट फ़ाइल निष्पादित करना

  4. MongoDB 4.0 लेनदेन:ACID पढ़ें + लिखें?

  5. UTF-8 को ध्यान में रखते हुए मैं अपने MongoDB को कैसे कॉन्फ़िगर करूं?