Я изучаю MongoDB в течение нескольких недель, и я до сих пор не знаю, как запросить вложенные документы в моем проекте. Я читал MongoDB-документы и много искал, но я не нашел хороших объяснений или учебников по моей проблеме. Возможно ты можешь помочь мне!Querying inested in mongoDB
У меня есть коллекция со следующей структурой (здесь выходной JSON):
{
community: "1",
date: 1365680790125,
isIndoor: "true",
party: {
teams: [
{
isWinner: true,
players: [
{
name: "jim",
hits: 4,
isFinisher: true
},
{
name: "john",
hits: 6,
isFinisher: false
}
]
},
{
isWinner: false,
players: [
{
name: "mike",
hits: 6,
isFinisher: false
},
{
name: "moe",
hits: 3,
isFinisher: false
}
]
}
]
},
id: "3141be7f9988d872"
}
А теперь я хочу, чтобы получить все записи, где «джим» участвовал.
Я попробовал этот запрос (в CoffeeScript), но я не получаю никаких результатов, и я думаю, что его очень дерьмовый ...
query = party:
$all:[
teams:
$in: [
player: [
name: 'jim'
]
]
]
Я надеюсь, что вы можете помочь мне понять, запрашивая вложенные документы. Спасибо!
эй, спасибо за ответ! Я попробовал ваш запрос в своей базе данных (платформа deployd), и он не работает. Я получаю все записи, а не только записи с именем игрока «jim». Затем я попробовал ваш запрос в оболочке браузера mongoDB, и он сработал ... – rojan21
okay ... это ошибка в deployd. он работает сейчас, см. https://groups.google.com/forum/#!msg/deployd-users/NidQ1sT9u6o/v8oGZZa0flsJ – rojan21
У меня такая же проблема, @ rojan21, deployd возвращают все записи по любому запросу, но я не могу найти информацию об этой ошибке ... – Danita