Retrieve distinct values for field in MongoDB collection
returns distinct values for a field in a collection by using the MongoDB® connection.values
= distinct(conn
,collection
,field
)
returns distinct values for a field in an executed MongoDB query on a collection.values
= distinct(conn
,collection
,field
,'Query',mongoquery
)
Connect to MongoDB and retrieve a distinct set of values for a field in a collection of documents. Here, each document in the collection represents an employee.
Create a MongoDB connection to the database mongotest
. Here, the database server dbtb01
hosts this database using port number 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: 23485919
conn
is the
mongo
object that contains the MongoDB connection. The object properties contain information about the connection and the
database.
The database name is mongotest
.
The user name is blank.
The database server is dbtb01
.
The port number is 27017
.
This database contains six document collections. The first three collection names are
airlinesmall
, employee
, and
largedata
.
This database contains 23,485,919 documents.
Verify the MongoDB connection.
isopen(conn)
ans = logical 1
The database connection is successful because the isopen
function returns 1
. Otherwise, the database connection is closed.
Retrieve a distinct set of values for a field in a document collection.
Here, retrieve distinct salaries for all employees.
values
is a cell array of doubles.
collection = "employee"; field = "salary"; values = distinct(conn,collection,field);
Display the first three salaries in the cell array.
values{1:3}
ans = 60000 ans = 50000 ans = 55000
Close the MongoDB connection.
close(conn)
Connect to MongoDB and retrieve a distinct set of values for a field in a MongoDB query. Here, each document in the collection represents an employee.
Create a MongoDB connection to the database mongotest
. Here, the database server dbtb01
hosts this database using port number 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: 23485919
conn
is the
mongo
object that contains the MongoDB connection. The object properties contain information about the connection and the
database.
The database name is mongotest
.
The user name is blank.
The database server is dbtb01
.
The port number is 27017
.
This database contains six document collections. The first three collection names are
airlinesmall
, employee
, and
largedata
.
This database contains 23,485,919 documents.
Verify the MongoDB connection.
isopen(conn)
ans = logical 1
The database connection is successful because the isopen
function returns 1
. Otherwise, the database connection is closed.
Create a JSON-style query as a character vector that contains a JSON-style
string. This query sets the department
field equal to the
value Sales
.
mongoquery = '{"department":"Sales"}';
Use the MongoDB query on the employee
collection to
retrieve a distinct set of values for a field. Here, retrieve distinct
salaries of all employees in the Sales department. values
is a cell array of doubles.
collection = "employee"; field = "salary"; values = distinct(conn,collection,field,'Query',mongoquery)
values = 1×3 cell array {[60000]} {[64440]} {[66000]}
Close the MongoDB connection.
close(conn)
conn
— MongoDB connectionmongo
objectMongoDB connection, specified as a mongo
object.
collection
— Collection nameCollection name, specified as a string scalar.
Example: "taxidata"
Data Types: string
field
— FieldField in a collection, specified as a string scalar.
Example: "department"
Data Types: string
mongoquery
— MongoDB queryMongoDB query, specified as a string scalar or character vector. Specify a JSON-style string to query the database.
Example: '{"department":"Sales"}'
queries the database for documents where
the department
field is equal to
Sales
.
Example: '{salary: {$gt: 90000}}'
queries the database for documents where
the value of the salary
field is greater than
90000
.
Data Types: char
| string
values
— Distinct valuesDistinct values of a field in a MongoDB collection or query, specified as a cell array. The cell array can contain numeric scalars for numeric data, character vectors for text data, and structures for nested documents.