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

Mongodb - dopasowanie regex kluczy dla poddokumentów

W ten sposób nie można wykonywać zapytań dotyczących kluczy dokumentów. Możesz wyszukiwać dokładne dopasowania za pomocą $exists , ale nie możesz znaleźć nazw kluczy pasujących do wzorca.

Zakładam (być może błędnie), że próbujesz znaleźć dokumenty, które mają pod-dokument URL i że nie wszystkie dokumenty będą go miały? Dlaczego nie zepchnąć tego typu informacji na niższy poziom, na przykład:

{
  payload: {
    type: "url",
    url: "Facebook.com",
    ...
  }
}

Następnie możesz zapytać:

db.foo.find({"payload.type": "url", ...})

Byłbym również niedbały, gdybym nie zauważył, że nie należy używać kropek (. ) to nazwy kluczy w MongoDB. W niektórych przypadkach możliwe jest tworzenie takich dokumentów, ale spowoduje to duże zamieszanie, gdy spróbujesz wykonać zapytanie do osadzonych dokumentów (gdzie Mongo używa kropki jako „separatora ścieżki”, że tak powiem).



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB $round vs $trunc:Jaka jest różnica?

  2. Jak zaktualizować wartości tablicy mongodb

  3. Połączenie gniazda SSL aplikacji Django z oprogramowaniem układowym

  4. Mongoose nie aktualizuje mojego dokumentu, jeśli nie mam funkcji zwrotnej

  5. Jak wykonać skrypt MongoDB js za pomocą Java MongoDriver?