2016-09-27 4 views
0

в моей _id базы данных Монго является строкой из ObjectId так:как получить результаты от MongoDB, где _id струнный ObjectId

enter image description here

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

db.collection.find({ _id : {$gt:"57c03e6288579757b5172d51"} }); 

как исправить это?

+0

Вы пробовали это? 'db.collection.find ({_id:" 57c03e6288579757b5172d51 "});' – John

+0

Если вы хотите, чтобы он отсортировался по '_id', вы должны сделать это явно, привязав' .sort ({_ id: 1}) 'к вашей команде , Это то, что вы подразумеваете под «неправильной сортировкой»? – JohnnyHK

+0

@John ваш запрос работает, но мне нужно передать $ gt 'больше, чем' – ehab

ответ

0

Вы не можете запросить, вставив строку objectID с помощью оператора $ gt. Вам нужно будет создать идентификатор объекта.

var objID = ObjectId("57c03e6288579757b5172d51"); 
db.collection.find({ _id : {$gt: objID} }); 

Documentation

+0

Я лот, но didint work .... в базе данных _id is string not ObjectId – ehab