0

I am using MongoDB Atlas Search to perform a search in Collection, for this I created a Atlas Search Index:

{
  "mappings": {
    "dynamic": false,
    "fields": {
      "caption": {
        "type": "string"
      }
    }
  }
}

Here is my aggregation:

[
   {
      "$search":{
         "text":{
            "path":"caption",
            "query":"Ingocnitáá",
            "fuzzy":{
               
            }
         },
         "highlight":{
            "path":"caption"
         }
      }
   }
]

I have below document in my collection:

{caption:"Ct tyu test Ingocnitáá"}

Issue: When I searching Ingocnitaa agreegation returning 0 result.

Is there anything wrong with my Search Index? I want an directive insensitive Search with highlight.

Kishor Patidar
  • 623
  • 12
  • 23

1 Answers1

0

There are two things missing:

  1. Include index name (Recommend to not use a default index, create a new index)
  2. Always pass fuzzy:{}

Here is a working query:

[
  {
       "$search":{
          "index": 'messageText',
          "text":{
             "path":"caption",
             "query":"Ingocnitaa",
             "fuzzy":{

             }
          },
          "highlight":{
             "path":"caption"
          }
       }
    }
]

Where messageText is search index name.


Search Index Formattion:

{
  "mappings": {
    "dynamic": false,
    "fields": {
      "caption": {
        "type": "string"
      }
    }
  }
}

Reference: CLick here

Kishor Patidar
  • 623
  • 12
  • 23