2015-06-25 3 views
1

У меня есть две коллекции под названием Company_Details и Company_Ranks ... Comp_ID распространен в двух коллекциях. Как объединить эти две коллекции, чтобы получить полную информацию о компании.Как слить две коллекции в mongodb

Пожалуйста, помогите мне

Благодаря сатйам

+0

Собираетесь ли вы на таяние эти документы постоянно для рефакторинга или архивировать? – TechWisdom

ответ

1

Чтобы сделать длинную историю короткой, вы либо сделать это на стороне клиента или рассмотреть преимущества вложения эти документы.

MongoDB не поддерживает объединения, а не реляционные базы данных. Это и про и кон. Это помогло разработчикам MongoDB сосредоточиться на масштабируемости, которую намного сложнее реализовать, когда у вас есть соединения и транзакции.

Вы можете следовать спецификации DBRef. Многие драйверы поддерживают DBRef и делают для вас плавный переход. Вы можете сделать это вручную. Но самое главное, вы можете использовать документы для вложения.

Вложение документов в MongoDB является уникальной способностью к реляционным базам данных. Смысл, вы можете создать одну коллекцию, состоящую из составных документов. Вы будете наслаждаться атомарностью, поскольку нет «частичного успеха» и локальности данных: спиннинг дисков лучше подходит для последовательного доступа к данным.

+0

Разве мы все не используем SSD? :) –

+0

@SergioTulentsev, ха-ха, слишком дорого, чтобы быть правдой – TechWisdom

0

Если запрос является вашим мотивом, и вы не хотите изменять свою схему. Затем попробуйте Apache Drill, который позволяет запрашивать SQL-запросы. Затем выполните полное соединение, внутреннее соединение и т. Д., Что бы вы ни пожелали. Вы можете check для тренировки с MongoDB.

+0

Можно ли использовать Mongodb LINQ для достижения объединений https://mongodb-documentation.readthedocs.org/en/latest/ecosystem/tutorial/use-linq-queries- с-Csharp-driver.html –

0

С MongoDB Version 3.2 и выше мы получили команду $lookup, которая является «той же», что и «Присоединиться к РСУБД».
С этим вы можете легко запросить между двумя Коллекциями и получить необходимую информацию.
Для получения более подробной информации Checkt из документации
https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/

Смежные вопросы