Задать вопрос
@GuF_2019

MongoDB отдаёт мне не все документы по запросу.В чём проблема?

В моей базе 2 млн. документов. У каждого документа в моей базе данных есть отдельное поле id которое пронумеровано от 1 до последнего документа.
Также у каждого документа есть поле data которое является массивом словарей. Мне нужно найти все документы ,первый словарь поля data имеет поле со значением в моём указанном диапазоне(от 100 до 150 например).
Я отправляю запрос к базе {"data.0.value":{$gte:100, $lte:150}}, и сам прикол в том что mongo отдаёт мне не все документы.
Понял я это тем, что отсортировал результаты и посмотрел на id самого первого документа, и он почему то начинается с 200000 id. Хотя до этого id были документы с value лежащим в том диапазоне который нам нужен. Помогите понять почему так происходит.
  • Вопрос задан
  • 73 просмотра
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 2
hzzzzl
@hzzzzl
хм странно, а если попробовать запрос расписать подробнее так?

$and: [
  {"data.0.value": { $gte:100 } },
  {"data.0.value" :{ $lte:150 } }
]


или же если просто выбрать { $gte:100 } и отсортировать по айди, то тоже будет начинаться с -_id 200000?
Ответ написан
@GuF_2019 Автор вопроса
Проверил, всё равно пропускает.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы