Как проверить конкретные данные в диапазоне, используя запрос mongodb? - PullRequest
0 голосов
/ 07 ноября 2019

Я пытался найти идентификатор MongoDB в определенном диапазоне дат, используя запрос MongoDB. но выдает ошибку, может кто-нибудь дать какое-либо предложение.

Данные БД Mongo

[{
id:1,
full_name:"naveen",
date:"2019-11-02"
},{
id:2,
full_name:"naveen123",
date:"2019-11-04"
}]

запрос mongodb

db.collection.find({id:1,date:{ '$gte': 2019-11-02,
     '$lt': 2019-11-06 }})

1 Ответ

1 голос
/ 07 ноября 2019

Вам не хватает запятых для значений даты в запросе.

Измените свой запрос, как показано ниже:

db.collection.find({id:1, date:{ "$gte": "2019-11-02", "$lt": "2019-11-06" }});

Это то, как вы можете это сделать, но не я.

Есть некоторые изменения, которые я предлагаю вам сделать, если вы этого еще не сделали.

1. Если вы храните даты в виде строк в БД, не делайтечто.

использовать правильный формат даты , как при запросе, так и при хранении.

2. использовать приведенный ниже формат запроса:

db.collection.find({id:1, date:{ /* cond1 */ }, 
     date: { /* cond2 */ }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...