JSON属性作为关系类型名称

时间:2017-12-06 11:23:12

标签: neo4j cypher

with {conatcts_count:10,account_count:20,time_stamp:'2010_12_231'} as data
merge (u:Customers1 {name:'sai',id:1})-[r:REL {conatcts_count:data.conatcts_count,account_count:data.account_count,ts:data.time_stamp}]-(s:Sale1 {name:'sales_123',id:1})

我试过这个......但是当我改变JSON的值时,它总是创建一个新的节点。我正在寻找一些采用JSON时间戳并与相同节点建立关系的东西。

Data model

1 个答案:

答案 0 :(得分:2)

这是由MERGE命令引起的。

用法:合并 pattern

合并命令首先执行 MATCH pattern ,如果没有结果,则执行 CREATE pattern

因此,如果您的ns节点之间没有任何关系,则MATCH不返回任何内容,因此要求数据库创建模式(u)-[:REL]->(s)

你应该做什么,就是这样:

with {conatcts_count:10,account_count:20,time_stamp:'2010_12_231'} as data 
MERGE (u:Customers1 {name:'sai',id:1})
MERGE (s:Sale1 {name:'sales_123',id:1})
MERGE (u)-[:REL {conatcts_count:data.conatcts_count,account_count:data.account_count,ts:data.time_stamp}]-(s)