MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

MongoDB:Нечувствителни към главни и главни букви и акценти

препоръчвам ви да създадете текстов индекс с език по подразбиране, зададен на "няма", за да го направите нечувствителен към диакритиката, и след това да извършите $text търсене, както следва:

db.Project.createIndex(
    {
        "WORKER": "text",
        "TRABAJADOR": "text"
    },
    {
        "background": false,
        "default_language": "none"
    }
)
db.Project.find({
    "$text": {
        "$search": "jesus",
        "$caseSensitive": false
    }
})

ето кода на c#, който генерира горните заявки. използвам моята библиотека MongoDB.Entities за краткост.

using MongoDB.Entities;
using System;
using System.Linq;

namespace StackOverflow
{
    public class Program
    {
        public class Project : Entity
        {
            public string WORKER { get; set; }
            public string TRABAJADOR { get; set; }
        }

        private static void Main(string[] args)
        {
            new DB("test");

            DB.Index<Project>()
              .Key(p => p.WORKER, KeyType.Text)
              .Key(p => p.TRABAJADOR, KeyType.Text)
              .Option(o => o.DefaultLanguage = "none")
              .Option(o => o.Background = false)
              .Create();

            (new[] {
                new Project { WORKER = "JESUS HERNANDEZ DIAZ"},
                new Project { TRABAJADOR = "JESÚS HERNÁNDEZ DÍAZ"}
            }).Save();

            var result = DB.SearchText<Project>("jesus");

            Console.WriteLine($"found: {result.Count()}");
            Console.Read();
        }
    }
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongoose ODM:NumberInt не е дефиниран

  2. Как да конфигурирате Embedded MongDB за тестване на интеграция в приложение за Spring Boot?

  3. Mongodb, $sum с условие

  4. Mongoimport игнорира водещата нула в csv

  5. MongoDB:Премахнете последните два знака от String