Neo4j合并所有节点

时间:2018-08-03 02:43:11

标签: neo4j

我有一个简单的数据集,如下所示enter image description here

并且我已经导入了neo4j。

USING PERIODIC COMMIT
LOAD CSV WITH HEADERS
FROM "file:///testset.csv" AS line WITH line

MERGE (b:Buyer {name: line.`trader`})
MERGE (s:Seller {name:line.`countertrade`})


CREATE (b)-[r:buy{amount:line.`price`}]->(s)
SET r.amount = tofloat(r.amount)

;

查询的输出显示

MATCH p=()-[r:buy]->() RETURN p LIMIT 25

enter image description here

蓝色是交易者,粉红色是反向交易

  

但是,我想看看整个关系图   (双向)。因此,节点将指向彼此,并且   总节点数将从6个减少到3个。   与6相同。我想知道neo4j是否可以做到。谢谢

enter image description here

1 个答案:

答案 0 :(得分:1)

您实际上应该使用单个节点标签:Company而不是:Buyer和:Seller,这样可以确保在合并时每个公司只有一个不同的节点,因此总共3个节点。

由于公司可以买卖,因此将其建模为标签是没有意义的,因为这已经在您指示的:buy关系中捕获了。