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: 23485919conn 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 =
55000Close 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: 23485919conn 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.