sql >> Databasteknik >  >> NoSQL >> MongoDB

skiftlägeskänslig fråga på mongodb

Anta att du har ett dokument som innehåller tag och du vill söka på det

Tags
{
  tag,
  ...
 }

Första alternativet är att använda regex (men det fungerar långsamt som @RestRisiko sa):

db.tags.find( { "tag" : { "$regex" : "C#", "$options" : "-i" } })

Det andra alternativet är att skapa ett annat fält med gemener (och på mongodb är det bästa sättet):

Tags
{
  tag,
  tagLower,
  ..
}

Och använd find som vanligt:

db.tags.find( { "tagLower" : "c#"})

Det kommer att fungera snabbare, eftersom ovanstående kod kan använda index för sökning.



  1. Ökande minnesgräns för mongodb aggregerade jobb

  2. Hur beräknar jag ruttavstånd mellan många GeoJSON-punkter i MongoDB?

  3. Få det högsta värdet av en kolumn i MongoDB

  4. Hur man importerar data till mongoDB