RNeo4j;在两个节点标签上匹配

RNeo4j; match on two node labels

提问人:mbyvcm 提问时间:1/25/2017 最后编辑:mbyvcm 更新时间:2/23/2017 访问量:65

问:

我有两种不同类型的节点;“元素”和“方面”。无论类型如何,所有节点都具有唯一的数字 ID。

如果我想在“元素”节点之间添加关系,我可以这样做;

    query = "MATCH (e:Element {id:{exp}}),(o:Element {id:{out}}) CREATE (e)-[:IVW]->(o);"

然后使用 for 循环在 R 中分配 和 from 数据帧。我可以对“Aspect”节点之间的关系做同样的事情。但是,如果我想在单个命令中分配所有节点之间的关系呢?我正在寻找一个命令,它将执行以下四个命令;expout

query = "MATCH (e:Element {id:{exp}}),(o:Element {id:{out}}) CREATE (e)-[:IVW]->(o);"
query = "MATCH (e:Aspect {id:{exp}}),(o:Aspect {id:{out}}) CREATE (e)-[:IVW]->(o);"
query = "MATCH (e:Element {id:{exp}}),(o:Aspect {id:{out}}) CREATE (e)-[:IVW]->(o);"
query = "MATCH (e:Aspect {id:{exp}}),(o:Element {id:{out}}) CREATE (e)-[:IVW]->(o);"

谢谢

R-NEO4J

评论


答:

1赞 Tomaž Bratanič 2/23/2017 #1

我认为这应该有效

query = "MATCH (e1:Element {id:{exp}}),(e2:Element {id:{out}}),
(a1:Aspect {id:  {exp}}),(a2:Aspect {id:{out}}) 
CREATE (e1)-[:IVW]->(e2),(a1)-[:IVW]->(a2),(e1)-[:IVW]->(a2),(a1)-[:IVW]->(e2)"