MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

MongooseJS/MongoDB търси точна фраза

Мисля, че си прав, че проверката на първия и последния знак са кавички е може би най-лесно. Самата мангуста обаче не може да направи това. Предлагам да подготвите заявката предварително и също така да изберете подходящата находка метод.

Можем също да използваме $regex оператор за изпълнение на дадения регулярен израз срещу свойството 'keyword' на всеки документ в колекцията.

var userInput = '"Apple"';
var term = userInput.trim(); 
var caseInsensitive = true; // = some user input?

var isExactTerm = (function() {
    var firstChar = term[0];
    var lastChar = term[term.length - 1];
    return (firstChar === '"' && lastChar === '"');
}();

if(isExactTerm) {
    // Remove quotes from the query
    term = term.substr(1, str.length - 1);
}

var method = (isExactTerm) ? 'findOne': 'find';
var regexFlags = (caseInsensitive) ? 'i' : '';
var query = (isExactTerm) ? term : {$regex: new RegExp(term, regexFlags)};

Model[method]({
    keyword: query
}).exec().then(function(result) {
    // do stuff with `result`
}, function(err) {
    // handle `err`
});



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. 3 начина за преобразуване на низ в дата в MongoDB

  2. Използване на QueryBuilder и BasicDBObjectBuilder в MongoDB 3.3.0 по-горе

  3. Метеор:неочакван код за изход на mongo нула. Рестартира се. Какво е това?

  4. Скоростта на заявките на CosmosDb е голяма с insertMany

  5. Раждане на параметър mongodb