我有一个Java / mongo对象节点,可以包含另一个节点等。 所以我在mongo的结构是:
like Document-> Node-> Node-> ...
Node有一个name属性,我想查找所有包含某个名称的节点(包括任何嵌套节点)的文档。
我使用点符号来执行以下操作:
query.field("document.node.name").equal(name)
但只有在父节点具有匹配名称时才有效..我需要的是某种通配符来搜索Node对象中的任何名称(document.node.node .... name等)。
感谢您的帮助!
答案 0 :(得分:1)
MongoDB中没有通配符搜索。
您需要以某种方式存储Node
以执行该查询。例如,您可以在每个Node
中存储层次结构(父链),以便您可以使用客户端应用程序代码重新创建层次结构。
最常用的结构有很好的记录here。