How to Index ObjectId Values in Fields
On this page
You can use the Atlas Search objectId
type to index ObjectId values. You can query fields of type
objectId
using the equals and in
operators.
You can also use the objectId
type to index:
Fields whose value is an array of
objectId
. To learn more, see How to Index the Elements of an Array.objectId
fields inside an array of documents indexed as the embeddedDocuments type.
If you enable dynamic mappings, Atlas Search
automatically indexes fields of type objectId
. You can
use the Visual Editor or the JSON Editor in the Atlas UI to
index fields as the objectId
type.
Define the Index for the objectId
Type
To define the index for the objectId
type, choose your preferred
configuration method in the Atlas UI and then select the
database and collection.
Click Refine Your Index to configure your index.
In the Field Mappings section, click Add Field Mapping to open the Add Field Mapping window.
Select the field to index from the Field Name dropdown.
Note
You can't index fields that contain the dollar (
$
) sign at the start of the field name.Click the Data Type dropdown and select ObjectId. To learn more more about this type, see Field Properties.
Click Add.
The following is the JSON syntax for the objectId
type.
Replace the default index definition with the following. To learn more
about the fields, see Field Properties.
{ "mappings": { "dynamic": true|false, "fields": { "<field-name>": { "type": "objectId" } } } }
Configure objectId
Field Properties
The Atlas Search objectId
type takes the following option:
UI Field Name | JSON Option | Type | Necessity | Description |
---|---|---|---|---|
Data Type | type | string | required | Human-readable label that identifies this field type. Value must
be objectId . |
Try an Example for the objectId
Type
The following index definition example uses the sample_mflix.comments collection. If you have the sample data already loaded on your cluster, you can use the Visual Editor or JSON Editor in the Atlas UI to configure the index. After you select your preferred configuration method, select the database and collection, and refine your index to add field mappings.
The following example index definition indexes the movie_id
field
as the objectId
data type to support queries against that field
using the Atlas Search equals operator.
In the Add Field Mapping window, select movie_id from the Field Name dropdown.
Click the Data Type dropdown and select ObjectId.
Click Add.
Replace the default index definition with the following index definition.
{ "mappings": { "dynamic": false, "fields": { "movie_id": { "type": "objectId" } } } }