2012-03-19 14 views
6

Jak dołączyć (w sensie INNER DOŁĄCZ z SQL) dwie kolekcje MongoDB w Pythonie? Czy potrzebuję użyć natywnej mapy/zmniejszyć kod javascript lub zrobić to w PyMongo? Jak rozwiązać ten problem za pomocą mniejszej ilości kodu?Jak dołączyć do kolekcji MongoDB w Pythonie?

Odpowiedz

11

Mongo przechowuje dane inaczej niż w tradycyjnej relacyjnej bazie danych i nie obsługuje połączeń tabel, tak jak w bazie danych SQL. Jest na ten temat zapis w dokumentacji "Referencje bazy danych". http://www.mongodb.org/display/DOCS/Database+References

W miarę możliwości najlepiej przechowywać wszystkie dane w jednym zbiorze. Jeśli nie jest to możliwe, oddzielne zapytania będą musiały zostać wykonane we wszystkich bazach danych, a dane zostaną scalone programowo.

Zgodnie z dokumentacją możliwe jest łączenie dokumentów w oddzielnych kolekcjach, bezpośrednio lub z referencjami bazy danych. Oddzielne zapytania będą nadal wykonywane w każdej kolekcji.

Podobne pytania zadawano wcześniej. (Poniżej zamieściłem kilka linków.) Mam nadzieję, że odpowiedzi dadzą ci dodatkowy wgląd w to, jak dane są przechowywane w MongoDB, i jak możesz zrestrukturyzować swoje dokumenty i/lub zapytania tak, abyś mógł pobrać potrzebne dane przy jak najmniejszej ilości danych. liczba żądań do bazy danych.

Powodzenia!

MongoDB and "joins"

How do I perform the SQL Join equivalent in MongoDB?

How to join query in mongodb?

"Początkujący pytanie dotyczące dołącza" http://groups.google.com/group/mongodb-user/browse_thread/thread/edfcf8bd270274f9/

Powiązane problemy