Neo4j很多很多关系

时间:2017-02-07 13:56:55

标签: graph neo4j cypher

我有三个节点:OrganizationA,OrganizationB,OrganizationC。

现实是“组织相互支持”。 即

[OragizationA]-[:supports]->[OrganizationB] ,
[OragizationB]-[:supports]->[OrganizationA]... and so on :

我正在实施Cypher查询(Neo4j):

Match (org:Organization)
create (org)-[:support]->(org)

如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

请记住,(a) - [:SUPPORTS] - >(b)和(b) - [:SUPPORTS] - >(a)同时,因为你可以在两个方向上遍历关系,所以通常一个就足够了。不过,这里有两个答案:

MATCH (org1:Organization),(org2:Organization)
WHERE org1 <> org2
CREATE (org1)-[:SUPPORTS]->(org2)

MATCH (org1:Organization),(org2:Organization)
CREATE (org1)-[:SUPPORTS]->(org2)

第二个也将创建(org1) - [:SUPPORTS] - &gt;(org1)如果这是你想要的:)