MERGE 使用在 Path 上, 必須要整個 Path 都滿足, 否則會建立一個新的 Path.

譬如說,

MERGE (a:Node1)-[r:RELATION]->(b:Node2)-[r2:RELATION2]->(c:Node3)

如果 b 跟 c 之間的 RELATION2 已經存在, 但是 a 跟 b 之間的 RELATION 不存在, MERGE 還是會建立一整個 PATH, 也就是說 RELATION2 會在建立一個.

所以如果不希望建立新的 RELATION2, 就需要分成兩個 MERGE:

MERGE (a:Node1)-[r:RELATION]->(b:Node2)

MERGE (b:Node2)-[r2:RELATION2]->(c:Node3)