假设您有3个图表,其中某些数据在图表之间共享。有没有一种方法可以做到以下几点:
在图1中找到一个节点
在图表2中搜索该节点(通过属性名称)
如果步骤2找到匹配项,那么我想将所有连接到图2中找到的节点的节点(包括“间接连接的节点”)连接到图1中的节点。
基本上我想在图中搜索特定节点,找到直接或间接连接到的所有节点,并将整个连接复制到图1中的原始节点。
任何关于如何做到这一点的提示都会很棒。提前谢谢。
使用Neo4j 1.9并且不太熟悉Cypher查询,它是社区版。
答案 0 :(得分:1)
如果您在一个数据库中拥有所有3个图表,那么这很简单。
执行查询以查找节点
START a=node.... MATCH ... WHERE ... RETURN a.prop as prop, ID(a) as id
假设您的节点已为您感兴趣的属性编制索引,请对该属性执行索引查找
START a=node({id}), b=node:index(property={prop})
MATCH (b)-->(c)
CREATE (c)-[:REL_TYPE]->(a)