Доступ к документу напрямую по ID - PullRequest
0 голосов
/ 13 февраля 2019

Я привык работать с firebase, где я могу получить доступ к документу напрямую, извлекая данные из БД, например, так.

db.collection('collectionName/documentID').get();

Мне не удается найти какую-либо документацию, касающуюся выполнения чего-то подобного вMongoDB.Нужно ли использовать поисковый запрос, чтобы получить данные из mongodb, или я что-то пропустил?Спасибо

Ответы [ 3 ]

0 голосов
/ 13 февраля 2019

В оболочке Монго вы можете получить его напрямую, как показано ниже:

db.st4.find ({"_ id": "1234"})

Результатset:

{"_id": "1234", "raw": {"Meas": {"Meas1": {"data": "blabla"}, "mesa2": {"data":"foo"}}}}

Или по умолчанию идентификатор монго как:

db.st1.find ({"_ id": ObjectId ("5c578d57ce9ba4a066ca2fa4)")})

{" _id ": ObjectId (" 5c578d57ce9ba4a066ca2fa4 ")," name ":" Просто имя "," users ": [" user1 "," user2 "]}

Для отображения результата в красивом формате

db.st1.find ({"_ id": ObjectId ("5c578d57ce9ba4a066ca2fa4")}). Pretty ()

Результирующий набор:

{
    "_id" : ObjectId("5c578d57ce9ba4a066ca2fa4"),
    "name" : "Just a name",
    "users" : [
        "user1",
        "user2"
    ]
}

Здесь st4 - это имя моей коллекции в базе данных test, поэтому, как только вы попали в оболочку mongo, выполните следующие действия, прежде чем выполнить запрос:

use test
db.st1.insert({"name" : "Just a name", "users" : [ "user1", "user2" ] })

и затем вы можете запросить по умолчанию _id сгенерированный монго, вы можете просто сделать запрос, чтобы получить недавно добавленные документы в коллекциюn st1 как показано ниже:

db.st1.find().sort({_id:-1}).limit(1)

Надеюсь, что это поможет вам выполнить базовый запрос к mongo shell

0 голосов
/ 13 февраля 2019

Поскольку mongo consolse - это интерактивная оболочка javascript, одним из способов было бы создать метод, подобный следующему:

function collectionNameGet(idToFind) {
  return db.collection.find({_id: idToFind });
}
0 голосов
/ 13 февраля 2019

Я думаю

const collection = db.collection('collectionName');
collection.findOne({_id: ObjectId('documentID'); });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...