Jeśli mam ten schemat ...dokument znalezienia z tablicy, która zawiera określoną wartość
person = {
name : String,
favoriteFoods : Array
}
... gdzie tablica favoriteFoods
jest wypełniona strun. Jak mogę znaleźć wszystkie osoby, które mają "sushi" jako swoje ulubione jedzenie za pomocą mangusty?
Miałem nadzieję na coś wzdłuż linii:
PersonModel.find({ favoriteFoods : { $contains : "sushi" }, function(...) {...});
(wiem, że nie ma $contains
w MongoDB, po prostu wyjaśniając, co spodziewałem się znaleźć przed znając rozwiązanie)
Przez tutaj jest dokumentacja: http://docs.mongodb.org/manual/tutorial/query-documents/#match-an-array-element –
Działa to również, gdy 'favouriteFoods' jest: ' favouriteFoods: [{typ: Schema.Types.ObjectId, ref: 'Foo d '}] ' – ZzKr
Jako ktoś nowy dla Mongo, pochodzący z RDBMS takiego jak MySQL, odkrycie, że takie rozwiązania działają tak prosto, bez konieczności łączenia się z JOIN i dodatkowymi tabelami, sprawia, że zastanawiam się, dlaczego wcześniej nie zacząłem na Mongo. Ale to nie znaczy, że DBMS jest lepszy od drugiego - zależy to od twojego przypadku użycia. –