У меня есть коллекция пользователей в Mongo DB
, имеющая пользователей 55L.Коллекция разделена на 10 узлов.
В коллекции есть поле "электронная почта", в котором хранится адрес электронной почты пользователей.
Я хочу выполнить текстовый поиск по этому вопросу.поле.Я хочу выполнить поиск по «почте», и в результате должны быть перечислены все документы, в которых есть подстрока «mail».
- Я пробовал с помощью регулярных выражений, но это влияет на производительность из-за размера коллекции.
- Я пытался создать текстовый индекс для "электронной почты", но он не поддерживает частичный поиск по токенам.
Пример коллекции, упомянутый ниже
{ "_id" : ObjectId("5b90e5ffe34b5891eb4c32f6"), "email" : "anand@gmail.com" }
{ "_id" : ObjectId("5b90e64ee34b5891eb4c32f7"), "email" : "kumar.anand@hotmail.com" }
{ "_id" : ObjectId("5b90e65ae34b5891eb4c32f8"), "email" : "ankit@gmail.com" }
{ "_id" : ObjectId("5b90e661e34b5891eb4c32f9"), "email" : "rahul@rediff.com" }
{ "_id" : ObjectId("5b90e67de34b5891eb4c32fa"), "email" : "prachi@gmail.com" }
{ "_id" : ObjectId("5b90f0ab46ef1951e6afb822"), "email" : "bb@yahoo.com", "name" : "ankit" }
{ "_id" : ObjectId("5b965d4ad5bc80bda9885181"), "email" : "amit@gmail.com", "rating" : [ 5, 6 ] }
{ "_id" : ObjectId("5b965d56d5bc80bda9885182"), "email" : "amit33@gmail.com", "rating" : [ 2, 4 ] }
{ "_id" : ObjectId("5b965d60d5bc80bda9885183"), "email" : "amit11@gmail.com", "rating" : [ 12, 14 ] }
{ "_id" : ObjectId("5b966cf1f12e2344dc5942e5"), "email" : "avin11@gmail.com", "new_rating" : { "id" : [ 5, 6 ] } }
{ "_id" : ObjectId("5b966cfdf12e2344dc5942e6"), "email" : "avin22@gmail.com", "new_rating" : { "id" : [ 2, 4 ] } }
{ "_id" : ObjectId("5b966d06f12e2344dc5942e7"), "email" : "avin33@gmail.com", "new_rating" : { "id" : [ 12, 14 ] } }
{ "_id" : ObjectId("5b986afaf12e2344dc5942e8"), "email" : "Sachin@hotmail.com", "name" : "Sachin" }
Пожалуйста, предложите, как выполнить поискзапрос