如何通过数组中的 属性 查询嵌套对象?
How do I query nested object by property inside an array?
我收集了数千(可能 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
已解决 - 查看我的回答...
我需要在查询中用引号括起嵌套的 属性 名称。如果在引号中包含 object.propName,我在 Mongo 中尝试的查询示例在 Loki 中确实有效,所以这确实有效:myCollection.find( { "obj.prop1": "b" } )
我收集了数千(可能 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 已解决 - 查看我的回答...
我需要在查询中用引号括起嵌套的 属性 名称。如果在引号中包含 object.propName,我在 Mongo 中尝试的查询示例在 Loki 中确实有效,所以这确实有效:myCollection.find( { "obj.prop1": "b" } )