Извлечение документов из набора MongoDB
возвращает все документы в наборе с помощью MongoDB® подключение.documents = find(conn,collection)
задает дополнительные опции, используя один или несколько аргументы пары "имя-значение". Для примера, documents = find(conn,collection,Name,Value)'Limit',10 ограничивает количество возвращенных документов 10.
Подключитесь к MongoDB, извлеките все документы в наборе и импортируйте их в MATLAB®. Здесь каждый документ в наборе представляет сотрудника.
Создайте соединение MongoDB с базой данных mongotest. Здесь сервер базы данных dbtb01 размещает эту базу данных с использованием номера порта 27017.
server = "dbtb01"; port = 27017; dbname = "mongotest"; conn = mongo(server,port,dbname)
conn =
mongo with properties:
Database: 'mongotest'
UserName: ''
Server: {'dbtb01'}
Port: 27017
CollectionNames: {'airlinesmall', 'employee', 'largedata' ... and 3 more}
TotalDocuments: 23485919conn является mongo объект, содержащий соединение MongoDB. Свойства объекта содержат информацию о подключении и базе данных.
Имя базы данных mongotest.
Имя пользователя пусто.
Сервер базы данных dbtb01.
Номер порта 27017.
Эта база данных содержит шесть наборов документов. Первые три имени набора airlinesmall, employee, и largedata.
Эта база данных содержит 23 485 919 документов.
Проверьте подключение MongoDB.
isopen(conn)
ans = logical 1
Подключение к базе данных успешно, поскольку isopen функция возвращает 1. В противном случае соединение с базой данных закроется.
Задайте employee набор для извлечения документов. Извлечение всех документов в наборе с помощью подключения MongoDB. documents является массивом структур.
collection = "employee";
documents = find(conn,collection);
Просмотр первого документа в наборе. Каждый документ представляет собой структуру с этими полями.
| Область | Описание | Тип данных |
|---|---|---|
x_id | Уникальный идентификатор | Структура |
department | Имя отдела | Вектор символов |
employee | Идентификатор сотрудника | Дважды |
salary | Зарплата сотрудника | Дважды |
documents(1)
ans =
struct with fields:
x_id: [1×1 struct]
department: 'Sales'
employee: 1
salary: 60000Закройте соединение MongoDB.
close(conn)
Подключитесь к MongoDB, извлеките все документы в запросе MongoDB из набора в базе данных и импортируйте их в MATLAB. Здесь каждый документ в наборе представляет сотрудника.
Создайте соединение MongoDB с базой данных mongotest. Здесь сервер базы данных dbtb01 размещает эту базу данных с использованием номера порта 27017.
server = "dbtb01"; port = 27017; dbname = "mongotest"; conn = mongo(server,port,dbname)
conn =
mongo with properties:
Database: 'mongotest'
UserName: ''
Server: {'dbtb01'}
Port: 27017
CollectionNames: {'airlinesmall', 'employee', 'largedata' ... and 3 more}
TotalDocuments: 23485919conn является mongo объект, содержащий соединение MongoDB. Свойства объекта содержат информацию о подключении и базе данных.
Имя базы данных mongotest.
Имя пользователя пусто.
Сервер базы данных dbtb01.
Номер порта 27017.
Эта база данных содержит шесть наборов документов. Первые три имени набора airlinesmall, employee, и largedata.
Эта база данных содержит 23 485 919 документов.
Проверьте подключение MongoDB.
isopen(conn)
ans = logical 1
Подключение к базе данных успешно, поскольку isopen функция возвращает 1. В противном случае соединение с базой данных закроется.
Задайте employee набор для извлечения документов. Создайте запрос MongoDB как вектор символов, который содержит строку в стиле JSON. Этот запрос извлекает всех сотрудников отдела сбыта.
collection = "employee"; mongoquery = '{"department":"Sales"}';
Извлечение всех документов в запросе MongoDB на employee набор при помощи соединения MongoDB. documents - массив структур, содержащий структуру для каждого документа, возвращенного запросом.
documents = find(conn,collection,'Query',mongoquery);Закройте соединение MongoDB.
close(conn)
Подключитесь к MongoDB и получите документы в запросе MongoDB из набора в базе данных. Затем отсортируйте результаты по полю в документах. Здесь каждый документ в наборе представляет сотрудника.
Создайте соединение MongoDB с базой данных mongotest. Здесь сервер базы данных dbtb01 размещает эту базу данных с использованием номера порта 27017.
server = "dbtb01"; port = 27017; dbname = "mongotest"; conn = mongo(server,port,dbname)
conn =
mongo with properties:
Database: 'mongotest'
UserName: ''
Server: {'dbtb01'}
Port: 27017
CollectionNames: {'airlinesmall', 'employee', 'largedata' ... and 3 more}
TotalDocuments: 23485919conn является mongo объект, содержащий соединение MongoDB. Свойства объекта содержат информацию о подключении и базе данных.
Имя базы данных mongotest.
Имя пользователя пусто.
Сервер базы данных dbtb01.
Номер порта 27017.
Эта база данных содержит шесть наборов документов. Первые три имени набора airlinesmall, employee, и largedata.
Эта база данных содержит 23 485 919 документов.
Проверьте подключение MongoDB.
isopen(conn)
ans = logical 1
Подключение к базе данных успешно, поскольку isopen функция возвращает 1. В противном случае соединение с базой данных закроется.
Задайте employee набор для извлечения документов. Создайте запрос MongoDB как вектор символов, который содержит строку в стиле JSON. Этот запрос извлекает всех сотрудников отдела сбыта.
collection = "employee"; mongoquery = '{"department":"Sales"}';
Создайте запрос сортировки как вектор символов, содержащий строку в стиле JSON. Сортировка документов по salary поле.
sortquery = '{"salary":1.0}';Извлечение всех документов в запросе MongoDB на employee набор с помощью подключения MongoDB и сортировка документов. documents - массив структур, содержащий структуру для каждого документа, возвращенного запросом. Документы сортируются по зарплате в порядке увеличения.
documents = find(conn,collection,'Query',mongoquery,'Sort',sortquery);
Просмотрите отсортированные зарплаты для первых двух сотрудников.
documents(1:2).salary
ans =
60000
ans =
64440
Закройте соединение MongoDB.
close(conn)
Подключитесь к MongoDB и получите все документы в наборе. Укажите поля для извлечения каждого документа. Импортируйте документы в MATLAB. Здесь каждый документ в наборе представляет сотрудника.
Создайте соединение MongoDB с базой данных mongotest. Здесь сервер базы данных dbtb01 размещает эту базу данных с использованием номера порта 27017.
server = "dbtb01"; port = 27017; dbname = "mongotest"; conn = mongo(server,port,dbname)
conn =
mongo with properties:
Database: 'mongotest'
UserName: ''
Server: {'dbtb01'}
Port: 27017
CollectionNames: {'airlinesmall', 'employee', 'largedata' ... and 3 more}
TotalDocuments: 23485919conn является mongo объект, содержащий соединение MongoDB. Свойства объекта содержат информацию о подключении и базе данных.
Имя базы данных mongotest.
Имя пользователя пусто.
Сервер базы данных dbtb01.
Номер порта 27017.
Эта база данных содержит шесть наборов документов. Первые три имени набора airlinesmall, employee, и largedata.
Эта база данных содержит 23 485 919 документов.
Проверьте подключение MongoDB.
isopen(conn)
ans = logical 1
Подключение к базе данных успешно, поскольку isopen функция возвращает 1. В противном случае соединение с базой данных закроется.
Задайте employee набор для извлечения документов. Укажите поля для извлечения каждого документа с помощью вектора символов, содержащей строку в стиле JSON. Вот, верните department и salary поля.
collection = "employee"; fields = '{"department":1.0,"salary":1.0}';
Извлечение всех документов в наборе. Используйте аргумент пары "имя-значение" 'Projection' для извлечения указанных полей для каждого документа. documents является массивом структур.
documents = find(conn,collection,'Projection',fields);
Просмотр первого документа в результатах. В дополнение к уникальному идентификатору документа документ содержит только указанные поля, department и salary.
documents(1)
ans =
struct with fields:
x_id: [1×1 struct]
department: 'Sales'
salary: 60000Закройте соединение MongoDB.
close(conn)
Подключитесь к MongoDB и получите определенное количество документов в наборе в базе данных. Возврат документов из определенного положения в результатах с помощью значения смещения. Импортируйте документы в MATLAB. Здесь каждый документ в наборе представляет сотрудника.
Создайте соединение MongoDB с базой данных mongotest. Здесь сервер базы данных dbtb01 размещает эту базу данных с использованием номера порта 27017.
server = "dbtb01"; port = 27017; dbname = "mongotest"; conn = mongo(server,port,dbname)
conn =
mongo with properties:
Database: 'mongotest'
UserName: ''
Server: {'dbtb01'}
Port: 27017
CollectionNames: {'airlinesmall', 'employee', 'largedata' ... and 3 more}
TotalDocuments: 23485919conn является mongo объект, содержащий соединение MongoDB. Свойства объекта содержат информацию о подключении и базе данных.
Имя базы данных mongotest.
Имя пользователя пусто.
Сервер базы данных dbtb01.
Номер порта 27017.
Эта база данных содержит шесть наборов документов. Первые три имени набора airlinesmall, employee, и largedata.
Эта база данных содержит 23 485 919 документов.
Проверьте подключение MongoDB.
isopen(conn)
ans = logical 1
Подключение к базе данных успешно, поскольку isopen функция возвращает 1. В противном случае соединение с базой данных закроется.
Задайте employee набор для извлечения документов.
collection = "employee";
Используйте аргумент пары "имя-значение" 'Skip' чтобы пропустить первые пять документов в наборе. Затем используйте аргумент пары "имя-значение" 'Limit' чтобы вернуть следующие 10 документов в набор. documents - массив структур, содержащий 10 документов.
documents = find(conn,collection,'Skip',5,'Limit',10);
Закройте соединение MongoDB.
close(conn)
conn - Подключение MongoDBmongo объектСоединение MongoDB, заданное как mongo объект.
collection - Имя набораИмя набора, заданное как строковый скаляр.
Пример: "taxidata"
Типы данных: string
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
'Skip',5,'Limit',10 пропускает первые пять документов в наборе и возвращает следующие 10 документов.'Query' - запрос MongoDB Запрос MongoDB, заданный как разделенная разделенными запятой парами, состоящая из 'Query' и строковый скаляр или вектор символов. Задайте строку в стиле JSON, чтобы запросить базу данных.
Пример: 'Query','{"department":"Sales"}' запрашивает в базе данных документы, в которых department поле равно Sales.
Пример: 'Query','{"salary": {$gt: 90000}}' запрашивает в базе данных документы, где значение salary поле больше 90000.
Пример: 'Query','{"_id":{$oid:"593fec95b78dc311e01e9204"}}' запрашивает базу данных для документа, имеющего идентификатор 593fec95b78dc311e01e9204.
Типы данных: char | string
'Projection' - ПоляПоля для извлечения в каждом документе, заданные как разделенная разделенными запятой парами, состоящая из 'Projection' и строковый скаляр или вектор символов. Задайте строку в стиле JSON, чтобы описать поля.
Пример: 'Projection','{"department":1.0,"salary":1.0}' возвращает department и salary поля.
Типы данных: char | string
'Sort' - Поле сортировкиПоле сортировки для документов, заданное как разделенная разделенными запятой парами, состоящая из 'Sort' и строковый скаляр или вектор символов. Задайте строку в стиле JSON, чтобы описать поле сортировки.
Пример: 'Sort','{"department":1.0}' сортирует возвращенные документы по department поле.
Типы данных: char | string
'Skip' - СмещениеСмещение от начала возвращаемых документов, заданное как разделенная разделенными запятой парами, состоящая из 'Skip' и числовой скаляр.
Пример: 'Skip',5 пропускает первые пять возвращенных документов.
Типы данных: double
'Limit' - Количество возвращаемых документовКоличество документов для возврата, заданное как разделенная запятой пара, состоящее из 'Limit' и числовой скаляр.
Пример: 'Limit',10 возвращает 10 документов.
Типы данных: double
documents - ДокументыДокументы в наборы MongoDB или запрос в наборе, возвращенные как структура, массив структур или массив ячеек структур.
Каждый документ в стиле JSON представлен как структура. find функция возвращает a:
Структура для одного документа
Массив структур для нескольких документов, содержащих одни и те же поля
Массив ячеек структур для нескольких документов, содержащих различные поля
find функция оценивает требования к памяти при извлечении многих документов с помощью Java® куча. Чтобы избежать проблем, связанных с нехваткой памяти, функция автоматически ограничивает количество возвращаемых документов за одно выполнение.
Когда возникает проблема, функция выдает предупреждающее сообщение, например Warning: Available memory is less than Total memory required. Limiting the RESULTSET from 15837001 to 59248. Use Skip and Limit to retrieve resultset in batches.
Чтобы извлечь много документов, извлеките их пакетами. Для получения примера смотрите Импорт больших данных из MongoDB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.