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

Как да използвате MongoDB $ne върху свойството на вложен обект

Отговарям на въпроса ви как да използвате $ne :

Използването на $ne е както следва:

"field":{
  "$ne": yourValue
}

Вашата заявка трябва да бъде като:

"user._id": {
  "$ne": req.user.id
}

Пример тук

$ne ще върне всички документи, в които стойността на полето не съвпада с дадената стойност.

Както направихте, за достъп до вложеното поле е необходимо да използвате нотацията с точка.

Освен това, за да сте сигурни, че работи, ако вашата схема дефинира _id като ObjectId може би е необходим анализ на req.user.id към ObjectId .
Но ако във вашата схема има низ, тогава трябва да работи.

Така че опитайте (изобщо не е тествано):

const injected = {
  'user._id': { "$ne": req.user.id }
};



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongo актуализира всички записи с поле, което е нула

  2. как да кача изображението в папка с помощта на nodejs и да запазя пътя в mongodb?

  3. Nodejs mongodb динамично име на колекция

  4. Как да получа дата, която да съхранявам като дата в MongoDB вместо Int64?

  5. Монго агрегиране с разредени на страници данни и суми