find

Получите документы в наборе MongoDB

Описание

пример

documents = find(conn,collection) возвращает все документы в наборе при помощи MongoDB® Связь интерфейса C++.

пример

documents = find(conn,collection,Name=Value) задает дополнительные опции с помощью одних или нескольких аргументов name-value. Например, Limit=10 ограничивает количество документов, возвращенных к 10.

Примеры

свернуть все

Соединитесь с MongoDB® с помощью интерфейса C++ MongoDB, получите все документы в наборе и импортируйте их в MATLAB®. В этом примере каждый документ в наборе представляет сотрудника.

Создайте связь MongoDB с базой данных mongotest использование интерфейса C++ MongoDB. Здесь, сервер базы данных dbtb01 хосты эта база данных с помощью номера порта 27017.

server = "dbtb01";
port = 27017;
dbname = "mongotest";
conn = mongoc(server,port,dbname)
conn = connection with properties:
           Database: "mongotest"
           UserName: ""
             Server: "dbtb01"
               Port: 27017
    CollectionNames: [13×1 string]

conn connection объект, который содержит связь MongoDB. Свойства объектов содержат информацию о связи и базе данных.

  • Именем базы данных является mongotest.

  • Имя пользователя является пробелом.

  • Сервером базы данных является dbtb01.

  • Номером порта является 27017.

  • Эта база данных содержит 13 наборов документа.

Проверьте связь MongoDB.

isopen(conn)
ans = logical
   1

Соединение с базой данных успешно потому что isopen функция возвращается 1. В противном случае соединение с базой данных закрывается.

Задайте employees набор для поиска документов. Получите все документы в наборе при помощи связи MongoDB. documents массив ячеек структур.

collection = "employees";
documents = find(conn,collection);

Отобразите первый документ в наборе. Каждый документ является структурой.

documents{1}
ans = struct with fields:
              _id: '5d8ccb9c961c96252819ea63'
      employee_id: 100
       first_name: 'Steven'
        last_name: 'King'
            email: 'SKING'
     phone_number: '515.123.4567'
        hire_date: '2003-06-17 00:00:00.0'
           job_id: 'AD_PRES'
           salary: 24000
    department_id: 90
        temporary: 0

Поля структуры:

  • Уникальный идентификатор

  • Идентификатор сотрудника

  • Имя

  • Фамилия

  • Электронная почта

  • Номер телефона

  • Наймите дату

  • Имя задания

  • Зарплата сотрудника

  • Идентификатор отдела

  • Временный флаг

Закройте связь MongoDB.

close(conn)

Соединитесь с MongoDB® с помощью интерфейса C++ MongoDB, получите все документы в запросе MongoDB на наборе в базе данных и импортируйте их в MATLAB®. В этом примере каждый документ в наборе представляет сотрудника.

Создайте связь MongoDB с базой данных mongotest использование интерфейса C++ MongoDB. Здесь, сервер базы данных dbtb01 хосты эта база данных с помощью номера порта 27017.

server = "dbtb01";
port = 27017;
dbname = "mongotest";
conn = mongoc(server,port,dbname)
conn = connection with properties:
           Database: "mongotest"
           UserName: ""
             Server: "dbtb01"
               Port: 27017
    CollectionNames: [13×1 string]

conn connection объект, который содержит связь MongoDB. Свойства объектов содержат информацию о связи и базе данных.

  • Именем базы данных является mongotest.

  • Имя пользователя является пробелом.

  • Сервером базы данных является dbtb01.

  • Номером порта является 27017.

  • Эта база данных содержит 13 наборов документа.

Проверьте связь MongoDB.

isopen(conn)
ans = logical
   1

Соединение с базой данных успешно потому что isopen функция возвращается 1. В противном случае соединение с базой данных закрывается.

Задайте employees набор для поиска документов. Создайте запрос MongoDB как строковый скаляр, который содержит строку JSON-стиля. Этот запрос получает всех сотрудников в отделе, который имеет идентификатор отдела 80.

collection = "employees";
mongoquery = "{""department_id"":80}";

Получите все документы в запросе MongoDB на employees набор при помощи связи MongoDB. documents массив ячеек, который содержит структуру для каждого документа, возвращенного запросом.

documents = find(conn,collection,Query=mongoquery);

Закройте связь MongoDB.

close(conn)

Соединитесь с MongoDB® с помощью C++ MongoDB, соединяют интерфейсом и получают документы в запросе MongoDB на наборе в базе данных. Затем отсортируйте результаты по полю в документах. В этом примере каждый документ в наборе представляет сотрудника.

Создайте связь MongoDB с базой данных mongotest использование интерфейса C++ MongoDB. Здесь, сервер базы данных dbtb01 хосты эта база данных с помощью номера порта 27017.

server = "dbtb01";
port = 27017;
dbname = "mongotest";
conn = mongoc(server,port,dbname)
conn = connection with properties:
           Database: "mongotest"
           UserName: ""
             Server: "dbtb01"
               Port: 27017
    CollectionNames: [13×1 string]

conn connection объект, который содержит связь MongoDB. Свойства объектов содержат информацию о связи и базе данных.

  • Именем базы данных является mongotest.

  • Имя пользователя является пробелом.

  • Сервером базы данных является dbtb01.

  • Номером порта является 27017.

  • Эта база данных содержит 13 наборов документа.

Проверьте связь MongoDB.

isopen(conn)
ans = logical
   1

Соединение с базой данных успешно потому что isopen функция возвращается 1. В противном случае соединение с базой данных закрывается.

Задайте employees набор для поиска документов. Создайте запрос MongoDB как строковый скаляр, который содержит строку JSON-стиля. Этот запрос получает всех сотрудников в отделе, который имеет идентификатор отдела 80.

collection = "employees";
mongoquery = "{""department_id"":80}";

Создайте запрос вида как строковый скаляр, который содержит строку JSON-стиля. Сортировка документов полем зарплаты.

sortquery = "{""salary"":1.0}";

Получите все документы в запросе MongoDB на employees набор при помощи связи MongoDB и вид документы. documents массив ячеек, который содержит структуру для каждого документа, возвращенного запросом. Документы сортируются по зарплате в увеличивающемся порядке.

documents = find(conn,collection,Query=mongoquery,Sort=sortquery);

Отобразите данные для первых двух сотрудников, отсортированных по зарплате. Зарплата для второго сотрудника выше, чем первый сотрудник.

documents{1:2}
ans = struct with fields:
               _id: '5d8ccc16961c96252819ea68'
       employee_id: 148
        first_name: 'Gerald'
         last_name: 'Cambrault'
             email: 'GCAMBRAU'
      phone_number: '011.44.1344.619268'
         hire_date: '2007-10-15 00:00:00.0'
            job_id: 'SA_MAN'
            salary: 11000
    commission_pct: 0.3000
        manager_id: 100
     department_id: 80
         temporary: 0

ans = struct with fields:
               _id: '5d8ccc12961c96252819ea67'
       employee_id: 147
        first_name: 'Alberto'
         last_name: 'Errazuriz'
             email: 'AERRAZUR'
      phone_number: '011.44.1344.429278'
         hire_date: '2005-03-10 00:00:00.0'
            job_id: 'SA_MAN'
            salary: 12000
    commission_pct: 0.3000
        manager_id: 100
     department_id: 80
         temporary: 0

Закройте связь MongoDB.

close(conn)

Соединитесь с MongoDB® с помощью C++ MongoDB, соединяют интерфейсом и получают все документы в наборе. Задайте поля, чтобы получить для каждого документа. Импортируйте документы в MATLAB®. В этом примере каждый документ в наборе представляет сотрудника.

Создайте связь MongoDB с базой данных mongotest использование интерфейса C++ MongoDB. Здесь, сервер базы данных dbtb01 хосты эта база данных с помощью номера порта 27017.

server = "dbtb01";
port = 27017;
dbname = "mongotest";
conn = mongoc(server,port,dbname)
conn = connection with properties:
           Database: "mongotest"
           UserName: ""
             Server: "dbtb01"
               Port: 27017
    CollectionNames: [13×1 string]

conn connection объект, который содержит связь MongoDB. Свойства объектов содержат информацию о связи и базе данных.

  • Именем базы данных является mongotest.

  • Имя пользователя является пробелом.

  • Сервером базы данных является dbtb01.

  • Номером порта является 27017.

  • Эта база данных содержит 13 наборов документа.

Проверьте связь MongoDB.

isopen(conn)
ans = logical
   1

Соединение с базой данных успешно потому что isopen функция возвращается 1. В противном случае соединение с базой данных закрывается.

Задайте employees набор для поиска документов. Задайте поля, чтобы получить для каждого документа при помощи строкового скаляра, который содержит строку JSON-стиля. В данном примере возвратите department_id и salary поля .

collection = "employees";
fields = "{""department_id"":1.0,""salary"":1.0}";

Получите все документы в наборе. Используйте аргумент Projection значения имени получать заданные поля для каждого документа. documents массив ячеек.

documents = find(conn,collection,Projection=fields);

Отобразите первый документ в результатах. В дополнение к уникальному идентификатору для документа документ содержит только заданные поля.

documents{1}
ans = struct with fields:
              _id: '5d8ccb9c961c96252819ea63'
           salary: 24000
    department_id: 90

Закройте связь MongoDB.

close(conn)

Соединитесь с MongoDB® с помощью C++ MongoDB, соединяют интерфейсом и получают определенное количество документов в наборе в базе данных. Возвратите документы в определенное положение в результатах с помощью значения смещения. Импортируйте документы в MATLAB®. В этом примере каждый документ в наборе представляет сотрудника.

Создайте связь MongoDB с базой данных mongotest использование интерфейса C++ MongoDB. Здесь, сервер базы данных dbtb01 хосты эта база данных с помощью номера порта 27017.

server = "dbtb01";
port = 27017;
dbname = "mongotest";
conn = mongoc(server,port,dbname)
conn = connection with properties:
           Database: "mongotest"
           UserName: ""
             Server: "dbtb01"
               Port: 27017
    CollectionNames: [13×1 string]

conn connection объект, который содержит связь MongoDB. Свойства объектов содержат информацию о связи и базе данных.

  • Именем базы данных является mongotest.

  • Имя пользователя является пробелом.

  • Сервером базы данных является dbtb01.

  • Номером порта является 27017.

  • Эта база данных содержит 13 наборов документа.

Проверьте связь MongoDB.

isopen(conn)
ans = logical
   1

Соединение с базой данных успешно потому что isopen функция возвращается 1. В противном случае соединение с базой данных закрывается.

Задайте employees набор для поиска документов.

collection = "employees";

Используйте аргумент Skip значения имени пропускать первые пять документов в наборе. Затем используйте аргумент Limit значения имени возвратить следующие 10 документов в наборе. documents массив ячеек, который содержит 10 документов.

documents = find(conn,collection,Skip=5,Limit=10);

Закройте связь MongoDB.

close(conn)

Входные параметры

свернуть все

MongoDB C++ соединяют интерфейсом со связью в виде connection объект.

Имя набора в виде строкового скаляра.

Пример: "taxidata"

Типы данных: string

Аргументы name-value

Задайте дополнительные пары аргументов как Name1=Value1,...,NameN=ValueN, где Name имя аргумента и Value соответствующее значение. Аргументы name-value должны появиться после других аргументов, но порядок пар не имеет значения.

Пример: Skip=5,Limit=10 пропускает первые пять документов в наборе и возвращает следующие 10 документов.

MongoDB запрашивают в виде строкового скаляра или вектора символов. Задайте строку JSON-стиля, чтобы запросить базу данных.

Пример: Query="{""department"":""Sales""}" запрашивает базу данных для документов где department поле равно Sales.

Пример: Query="{""salary"": {""$gt"": 90000}}" запрашивает базу данных для документов где значение salary поле больше 90000.

Пример: Query="{""_id"":{""$oid"":""593fec95b78dc311e01e9204""}}" запрашивает базу данных для документа, который имеет идентификатор 593fec95b78dc311e01e9204.

Типы данных: char | string

Поля, чтобы получить в каждом документе в виде строкового скаляра или вектора символов. Задайте строку JSON-стиля, чтобы описать поля.

Пример: Projection="{""department"":1.0,""salary"":1.0}" возвращает department и salary поля .

Типы данных: char | string

Поле сортировки для документов в виде строкового скаляра или вектора символов. Задайте строку JSON-стиля, чтобы описать поле сортировки.

Пример: Sort="{""department"":1.0}" сортирует возвращенные документы по department поле .

Типы данных: char | string

Возместите с начала возвращенных документов в виде числового скаляра.

Пример: Skip=5 пропускает первые пять возвращенных документов.

Типы данных: double

Количество документов, чтобы возвратиться в виде числового скаляра.

Пример: Limit=10 возвращает 10 документов.

Типы данных: double

Выходные аргументы

свернуть все

Документы в наборе MongoDB или запросе на наборе, возвращенном как структура, массив структур или массив ячеек структур.

Каждый документ JSON-стиля представлен как структура. find функция возвращает a:

  • Структура для одного документа

  • Массив структур для нескольких документов, содержащих те же поля

  • Массив ячеек структур для нескольких документов, содержащих различные поля

Введенный в R2021b