MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Zbudować ten LEFT() SQL w zapytaniu MongoDB?

Jeśli potrzebujesz tylko numeru telefonu, który zaczyna się od cyfry „3”, możesz po prostu użyć mądrej decyzji @mstearn , tutaj tylko realizacja c#:

var query = Query.EQ("PhoneNumber", new BsonRegularExpression("^3"));

Ale powiedzmy, czy potrzebujesz zapytania o pierwsze 3 liczby z zakresu 345 - 369, aby zadziałało (bez wolnych operatorów:$where , $regex ) możesz utworzyć dodatkowe pole i zapisać tam pierwsze 3 numery (numer kierunkowy) telefonu. A następnie użyj zapytania zaproponowanego przez @yi _H , tutaj znowu realizacja sterownika c#:

var query = Query.GTE("PhoneAreaCode", 345).LTE(369);

Nie przejmuj się dodatkowym pole w mongodb - to powszechna praktyka. Dodatkowe pola zwykle działają szybciej niż jakiekolwiek obliczenia podczas zapytania.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. pullAll podczas usuwania osadzonych obiektów

  2. Lepszy sposób na przeniesienie kolekcji MongoDB do innej kolekcji

  3. Aplikacja Laravel nie działa na serwerze xampp ani na żywo, ale działa dobrze na serwerze php artisan

  4. Optymalizacja zadania przepływu powietrza, które przesyła dane z BigQuery do MongoDB

  5. Jak skonfigurować zestaw replik Mongo na Kubernetes?