Поиск по объекту на Mongo Compass

Как использовать Mongo Compass и осуществлять поиск по ObjectID? Я искал документацию для этого, но ничего не получилось. Я пытался:

{ "_id" : "58f8085dc1840e050034d98f" }

{ "$oid" : "58f8085dc1840e050034d98f" }

{ "id" : "58f8085dc1840e050034d98f" }

Ни один из тех, кажется, не работает, и это становится довольно расстраивающим. Кроме того, sidenote - можно ли установить пропуск/лимит при отображении документов в Compass?

Заранее спасибо!

Ответы

Ответ 1

ОБНОВЛЕНИЕ Более новые версии Compass теперь поддерживают запрос ObjectId, аналогично тому, как они будут запрашиваться через оболочку mongo (синтаксис $oid не будет работать в этих новых версиях):

{_id: ObjectId('58f8085dc1840e050034d98f')}

Если вы используете более старую версию до версии 1.10.x, введите в поле запроса следующее:

{"_id":{"$oid":"58f8085dc1840e050034d98f"}}

Также стоит отметить, что в пользовательском интерфейсе вы можете нажать на один из _ids, и он автоматически заполнит поле запроса запросом, основанным на том, что вы щелкнули. Вы также можете сдвигать + щелкать по нескольким полям, чтобы создать сложный (и редактируемый) критерий запроса, или вы можете щелкнуть и перетащить, чтобы выбрать диапазон.

Пропустить и Limit являются поддержка для версий> = 1.8.x не поддерживает пропуска и ограничения при просмотре на вкладке Документы. Нажмите кнопку "Параметры" в правой части панели запросов. См. Документацию Query Bar для иллюстрации и деталей.

Вкладка "Схема" поддерживает только лимит, так как это приведет к выборке документов, и пропуск в этом контексте не имеет смысла.

Чтобы кликнуть на _ids, вам нужно быть на вкладке Schema. Если ваши _id имеют тип ObjectId, визуализация распределения будет отображаться в виде диапазона дат, и вы можете перетаскивать одну или несколько строк, чтобы заполнить запрос на основе _id. Если ваши _id имеют какой-то другой тип, некоторая их часть будет отображаться по отдельности, и вы можете щелкнуть, перетащить или щелкнуть по ним.

Ответ 2

Текущая версия MongoDB Compass (1.10.5) больше не поддерживает $oid, но работает со стандартным запросом: {"_id":ObjectId("5a028baa2dc80f2e26a8ed63")}