Neo4j 创建具有多个标签/属性的边

问题描述

我是 neo4j 的新手,但我正在尝试创建这个简单的图形,其中边可以有多个标签(或者它是属性??)

基本上

          clicked
User A ---------------------------------------------------------->  item B
       {created at: timestamp,user key: some user specific key}

到目前为止我可以创建

                     clicked
User A ---------------------------------------------------------->  item B
           {created at: timestamp}



                  clicked
User A ---------------------------------------------------------->  item B
       |    {created at: timestamp}                              ^
       L_________________________________________________________|

但不是两条边,我想在一条边中拥有这两个属性? 那可行吗? 首选密码查询

解决方法

是的,你可以 - 这些是关系/边缘属性。关系没有标签,只有类型和属性。

要一次性创建与所有属性的关系,您可以这样做

MATCH (u:User {name:"A"})
MATCH (i:Item {name:"B"})
CREATE (u)-[r:CLICKED]->(i)
SET r.createdAt=$timestamp,r.userKey=$userkey

或者,如果您已经拥有该关系并希望为其添加属性:

MATCH (u:User {name:"A"})
MATCH (i:Item {name:"B"})
MERGE (u)-[r:CLICKED]->(i)
SET r.createdAt=$timestamp,r.userKey=$userkey