#arrays #mongodb #mongodb-query
#массивы #mongodb #mongodb-запрос
Вопрос:
Я хочу перечислить идентификаторы, в которых у него всего 12-18 отзывов.
В базе данных это отображается как
**"example" : [
5,
10
],**
5, 10 — это количество отзывов
итак, 5 означает 5 отзывов из 10 просмотров.
Я пробовал следующее, однако это не работает.
db.student.find({ u1 : { $gt : 5, $lt : 10}});
есть кто-нибудь, кто может помочь?
Комментарии:
1. Взгляните на этот документ о точечной нотации docs.mongodb.com/manual/core/document/#document-dot-notation
2. @rodrigoap Я пробовал точечную нотацию, однако это не работает. Я только хочу, чтобы число, где в моем примере 10, было максимальным 18 или минимальным 12
3. Можете ли вы отредактировать свой вопрос, чтобы показать, что вы пытаетесь использовать точечную нотацию?
4. Попробуйте использовать оператор $и. docs.mongodb.com/manual/reference/operator/query/and
5. можете ли вы уточнить, документ JSON и ожидаемый результат
Ответ №1:
Этот запрос выдаст вам документы с: количеством просмотров: от 4 до 7 И количеством просмотров: от 10 до 20.
db.getCollection("student").find({
"example.0":{$gt:4, $lt:7},
"example.1":{$gt:10, $lt:20}
})
Я думаю, вы можете изменить приведенный выше запрос в соответствии с вашими потребностями, поскольку ваш вопрос мне не совсем понятен.