配置 apoc.refactor.MergeNodes()
Configuring apoc.refactor.MergeNodes()
我正在在此设置上测试 apoc 程序:
CREATE (:testNode{id:"1"})-[:TAGS{id:"r1"}]->(:tag{id:"h"})
CREATE (:testNode{id:"2"})-[:TAGS{id:"r2"}]->(:tag{id:"H"})
然后 运行 这个:
MATCH (htag:tag), (gtag:tag)
WHERE htag.id=toLower(gtag.id) AND htag<>gtag
WITH htag, gtag LIMIT 1
CALL apoc.refactor.mergeNodes([htag, gtag], {id:'discard'}) YIELD node
RETURN node
据我了解,{id:'discard'} 应该表示如果 htag.id存在,它将被保留而 gtag.id 将被丢弃。相反,它似乎保持 gtag.id。
我误会了什么?
您错误地填写了配置:
CALL apoc.refactor.mergeNodes([htag, gtag], {properties: {id:'discard'}}) YIELD node
[https://neo4j-contrib.github.io/neo4j-apoc-procedures/#_merging_nodes]
我正在在此设置上测试 apoc 程序:
CREATE (:testNode{id:"1"})-[:TAGS{id:"r1"}]->(:tag{id:"h"})
CREATE (:testNode{id:"2"})-[:TAGS{id:"r2"}]->(:tag{id:"H"})
然后 运行 这个:
MATCH (htag:tag), (gtag:tag)
WHERE htag.id=toLower(gtag.id) AND htag<>gtag
WITH htag, gtag LIMIT 1
CALL apoc.refactor.mergeNodes([htag, gtag], {id:'discard'}) YIELD node
RETURN node
据我了解,{id:'discard'} 应该表示如果 htag.id存在,它将被保留而 gtag.id 将被丢弃。相反,它似乎保持 gtag.id。
我误会了什么?
您错误地填写了配置:
CALL apoc.refactor.mergeNodes([htag, gtag], {properties: {id:'discard'}}) YIELD node
[https://neo4j-contrib.github.io/neo4j-apoc-procedures/#_merging_nodes]