>我在neo4j中有父/子图:决定(父,子决定列表),其中具有属性名称(字符串) 我将用于搜索。 它通过查询完美地找到了我在名称中包含搜索词的决定:
START d=node:node_auto_index({autoIndexQuery}) MATCH (d:Decision) RETURN d
我想使此查询复杂化,以查找名称中包含搜索词并且在其子名称中具有搜索词的决定:
Name of relation is CONTAINS (Decision CONTAINS decisions)
我认为以下查询应该有效:
START parent=node:node_auto_index({autoIndexQuery})
WITH parent
START child=node:node_auto_index({autoIndexQuery})
MATCH (parent:Decision)-[:contains]->(child:Decision)
where parent <> child
RETURN parent, child;
这里的一个问题是全文查询条件(我认为)只能在START
块中进行。 这意味着您需要以这种方式匹配父项和子项,然后将它们与MATCH
连接。
这可能需要一些时间才能完成,具体取决于匹配的节点数,因为查询主要查看匹配的所有节点之间是否存在此父/子关系。 但它应该完成工作。