MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

MongoDB:pobierz dokumenty według tagów

przykładowa kolekcja:

db.tags.insert({"tags":["red", "tall", "cheap"]});
db.tags.insert({"tags":["blue", "tall", "expensive"]});
db.tags.insert({"tags":["blue", "little", "cheap"]}); 

znajdź wszystkie, które zawierają tag „niebieski”

db.tags.find({tags: { $elemMatch: { $eq: "blue" } }})

znajdź wszystkie oznaczone jako „niebieskie” i tylko niebieskie

db.tags.find({tags: "blue"})

znajdź wszystkie oznaczone jako „niebieskie” i „tanie”

db.tags.find({ tags: { $all: ["cheap", "blue"] } } )

znajdź wszystkie nie „niebieskie”

db.tags.find({tags: { $ne: "blue" } })

znajdź wszystkie „niebieskie” i „tanie”, ale nie „czerwone” i „wysokie”

niemożliwe w moim mongo or.ar. Od mongodb 1.9.1 na coś takiego powinno działać (nie testowano):

db.tags.find({ $and: [ {tags: { $all: ["blue", "cheap"] } }, { tags: { $nin: ["red", "tall"] } } ] })


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. (węzeł:71307) [DEP0079] Ostrzeżenie o wycofaniu

  2. Nie można znaleźć modułu mongoDB podczas wdrażania do Heroku

  3. Mongoose pobiera dokumenty pasujące do tablicy

  4. Sortuj według długości tablicy

  5. Porównaj elementy tablicy, usuń ten z najniższym wynikiem