我有下面的图表,描述汽车品牌在文件中的共现情况:
CREATE
(`0` :Car {value:"Ford"})
, (`1` :Car {value:"Subaru"})
, (`2` :Car {value:"VW"})
, (`0`)-[:`DOCUMENT` {value:"DOC-1"}]->(`1`)
, (`0`)-[:`DOCUMENT` {value:"DOC-2"}]->(`1`)
, (`1`)-[:`DOCUMENT` {value:"DOC-3"}]->(`2`);

如果两个节点之间存在许多关系--为了可视化目的--我想用一个节点替换它,并计算权重:
VW ---1--- Subaru ---2--- Ford如何才能做到这一点?
我尝试了以下查询:
MATCH (n1)-[r1:DOCUMENT]-(n2)
RETURN n1, n2, apoc.create.vRelationship(n1, 'WEIGHT', {weight:count(r1)}, n2);但这是,而不是预期的结果:

发布于 2018-08-06 18:46:18
如果关系方向未在MATCH (n1)-[r1:DOCUMENT]-(n2) RETURN *;中指定,则每个关系将返回两次
╒══════════════════╤══════════════════╤═════════════════╕
│"n1" │"n2" │"r1" │
╞══════════════════╪══════════════════╪═════════════════╡
│{"value":"Ford"} │{"value":"Subaru"}│{"value":"DOC-1"}│
├──────────────────┼──────────────────┼─────────────────┤
│{"value":"Ford"} │{"value":"Subaru"}│{"value":"DOC-2"}│
├──────────────────┼──────────────────┼─────────────────┤
│{"value":"Subaru"}│{"value":"Ford"} │{"value":"DOC-1"}│
├──────────────────┼──────────────────┼─────────────────┤
│{"value":"Subaru"}│{"value":"Ford"} │{"value":"DOC-2"}│
├──────────────────┼──────────────────┼─────────────────┤
│{"value":"Subaru"}│{"value":"VW"} │{"value":"DOC-3"}│
├──────────────────┼──────────────────┼─────────────────┤
│{"value":"VW"} │{"value":"Subaru"}│{"value":"DOC-3"}│
└──────────────────┴──────────────────┴─────────────────┘通过将MATCH子句更改为MATCH (n1)-[r1:DOCUMENT]->(n2)或MATCH (n1)<-[r1:DOCUMENT]-(n2)来指定方向。查询的其余部分是正确的。
https://stackoverflow.com/questions/51713072
复制相似问题