Mongodb选择

时间:2013-03-12 11:25:51

标签: mongodb

我有一个类似以下的集合

array(

'Pinned' => 
  array (
    '0' => 
    array (
      'PageId' => '511b6b482284a5481d000000',
      'PageTitle' => 'VOIP Business',
    ),
    '1' => 
    array (
      'PageId' => '511b6b482284a5481d000001',
      'PageTitle' => 'Dialers',
    ),
  ),
  'ReportAbuse' => 0,

)

“Pinned”可以在其中包含多个数组。我需要找到那些有

的文件
'PageId' => '511b6b482284a5481d000000'

在固定内部。

所以我试过

'Pinned' => array(
      'PageId' => '511b6b482284a5481d000000'
)

但我没有工作。 我希望我的问题很明确:)。如果有人知道答案,请帮助我。 感谢。

2 个答案:

答案 0 :(得分:0)

你需要你的语言相当于:

find({'Pinned.PageId': '511b6b482284a5481d000000'})

请注意,这仅适用于顶级数组。

答案 1 :(得分:0)

当前仅支持顶层数组查询和操作数组元素,而不支持嵌套数组 - 请参阅http://docs.mongodb.org/manual/reference/operator/positional/中的$ position运算符

将来可能会发生变化,请参阅https://jira.mongodb.org/browse/SERVER-831

同时,必须在客户端进行嵌套数组的查询和更新:

  • 将文档读入变量
  • 操纵数组
  • 更新文档,重写整个数组