Na przykład, jeśli moje słowo kluczowe jest "wszystkie", chciałbym, aby MongoDb zwrócił wszystkie dokumenty z danego pola zawierające słowa "wszystkie", takie jak "edgar allan poe" lub "sala Whitneya". Jak mam to zrobić w MongoDb? Utknąłem tu od wielu dni, więc każda pomoc będzie bardzo doceniona :)Jak wyszukiwać w Mongodb przy użyciu znaków wieloznacznych?
10
A
Odpowiedz
17
Używając wyrażenia regularnego. MongoDb ma operatora $regex.
db.authors.find({name: {$regex: 'all', $options: 'i'}});
Operacje Regex nie mogą korzystać z indeksów, więc operacje find() nie będą wydajne. Indeks może być używany tylko dla prefiksów (zaczyna się od) i dopasowań wielkości liter, takich jak to zapytanie:
db.authors.find({name: {$regex: '^a'});
Powiązane problemy
- 1. Jak wyszukiwać wartości z wielu tabel przy użyciu symboli wieloznacznych?
- 2. importowanie klas przy użyciu symboli wieloznacznych
- 3. Spring @ CacheEvict przy użyciu symboli wieloznacznych
- 4. Indexeddb: wyszukiwanie przy użyciu symboli wieloznacznych
- 5. Jak skopiować rodzajowe kolekcji w Javie przy użyciu symboli wieloznacznych
- 6. Wyszukiwanie przy użyciu symboli wieloznacznych w aplikacji Appengine w pytonie
- 7. Jak uzyskać wiele dokumentów przy użyciu tablicy identyfikatorów MongoDb?
- 8. Mapy aplikacji wieloznacznych w usługach IIS przy użyciu WIX
- 9. Wyszukiwanie fasetowe przy użyciu MongoDB
- 10. Używanie znaków wieloznacznych wewnątrz pg_prepare
- 11. Zapytanie MongoDB przy użyciu "ObjectId"
- 12. zmiana nazwy plików w cmd przy użyciu symboli wieloznacznych
- 13. przy użyciu symboli wieloznacznych w Javie ścieżce klasy
- 14. Dopasowywanie ciągów znaków wieloznacznych w Ruby
- 15. Jak wyszukiwać ciąg znaków oddzielonych przecinkami?
- 16. Czy możesz wyszukiwać w Google Play przy użyciu funkcji Intent?
- 17. Wyszukiwanie ciągu znaków specjalnych w dokumencie MongoDB
- 18. Usuwanie plików przy użyciu symboli wieloznacznych - exec vs unlink
- 19. Liczba znaków przy użyciu jquery
- 20. Aktywacja profilu, gdy pliki istnieje przy użyciu symboli wieloznacznych
- 21. Jak importować MongoDB przy użyciu importów w stylu es6?
- 22. jak uzyskać różne wartości w mongodb przy użyciu golang
- 23. zliczanie częstotliwości znaków w ciągu znaków przy użyciu javascript
- 24. Aktualizacja MongoDB przy użyciu sterownika Java 3
- 25. Problem podczas instalacji MongoDB przy użyciu MacPorts
- 26. Wywoływanie zagnieżdżonych dokumentów przy użyciu Mongoose (MongoDB)
- 27. Jak wyszukiwać pola za pomocą symboli wieloznacznych i spacji w wyszukiwaniu w trybie hibernacji
- 28. Jak zaktualizować wiele pól przy użyciu Update.Set w MongoDB przy użyciu oficjalnego sterownika C#?
- 29. Upuszczanie kolekcji MongoDB przy użyciu regex
- 30. Jak wyszukiwać w Firebase klucze odpowiadające prefiksowi ciągów znaków
Warto zauważyć, że nie będzie to wykorzystywać indeksów, więc nie będzie w ogóle bardzo dobrze skalować. –
Użyje indeksów do wyrażeń regularnych tylko w przypadku wyszukiwania początku łańcucha: '^ test' – moka
Brakuje'} 'na końcu. Powinno się przeczytać 'db.authors.find ({nazwa: {$ regex: 'wszystkie', $ opcje: 'i'}});'. –