2

我收集了数千个(可能是 30-40k)文档,其结构(非常简化)如下:

{
 propA:'123',
 obj: [
       {prop1:'a'},
       {prop1:'b'},
       {prop1:'c'}
 ],
 propB:456
}

我如何查询以查找所有文档在哪里obj.prop1==='b'?我似乎无法弄清楚如何检查数组属性中对象的属性。这是使用版本 1.5.1。

谢谢!

更新 我已经对 MongoDB 样式查询进行了一些研究(我相信 Loki 会效仿?)。以下适用于 Mongo,但不适用于 Loki myCollection.find( { "obj.prop1": "b" } ):Loki 给我一个错误:Uncaught SyntaxError: Unexpected token 。

更新 2 已解决 - 请参阅我的答案...

4

1 回答 1

2

我需要在查询中将嵌套属性名称包含在引号中。如果您将 object.propName 包含在引号中,我在 Mongo 中尝试的查询示例在 Loki 中确实有效,所以这确实有效:myCollection.find( { "obj.prop1": "b" } )

于 2018-01-24T15:41:49.430 回答