MongoDB не поддерживает объединения.Если вы хотите привязать пользователей к новостям, вы можете сделать следующее
1) Сделайте это на уровне приложений.Получить список пользователей, получить список новостей и отобразить их в вашем приложении.Этот метод очень дорогой, если вам это нужно часто.
2) Если вам нужно часто выполнять предыдущий шаг, вам следует переделать схему, чтобы новостные статьи сохранялись в виде встроенных документов вместе с пользовательскими документами.
{
"_id": "4ca30373fd0e910ecc000007",
"login": "user22",
"pass": "example_pass",
"date": "2010-09-29"
"news" : [{
"name": "news 222",
"content": "news content 2222",
"date": "2010-09-29"
},
{
"name": "news 222",
"content": "news content 2222",
"date": "2010-09-29"
}]
}
Один разу вас есть данные в этом формате, запрос, который вы пытаетесь выполнить, является неявным.Однако следует отметить, что аналитические запросы становятся сложными в такой схеме.Вам нужно будет использовать MapReduce для получения самых последних добавленных новостных статей и таких запросов.
В конце концов, дизайн схемы и степень денормализации, которую может обработать ваше приложение, зависит от того, какие запросы вы ожидаете от приложениязапустить.
Эти ссылки могут оказаться полезными.http://www.mongodb.org/display/DOCS/Schema+Design http://www.blip.tv/file/3704083
Надеюсь, это было полезно.