使用MERGE插入节点和边的模式

时间:2014-02-11 19:20:24

标签: merge neo4j cypher

我正在尝试使用merge插入模式(节点和边)。使用演示电影图,我发送以下密码查询:电影存在,我想在一个查询中创建用户节点和边缘。

MERGE (top:Movie { title:'Top Gun' })<-[:viewed]-(user:User {Name:'Pierre'}) 
ON CREATE SET user.created = timestamp()
ON MATCH SET user.lastSeen = timestamp()
RETURN user,top;

“MERGE至少需要知道模式的某些部分。请为以下之一提供值:user,top”

实际上,顶部退出,我无法弄清楚我的查询中有什么问题。谢谢你的帮助。 皮尔

1 个答案:

答案 0 :(得分:1)

这会有用吗?

MATCH (top:Movie { title:'Top Gun' })
MERGE (top)<-[:viewed]-(user:User {Name:'Pierre'}) 
ON CREATE SET user.created = timestamp()
ON MATCH SET user.lastSeen = timestamp()
RETURN user,top;

或者这个用于创建:

MERGE (top:Movie { title:'Top Gun' })
MERGE (user:User {Name:'Pierre'}) 
ON CREATE SET user.created = timestamp()
ON MATCH SET user.lastSeen = timestamp()
MERGE (top)<-[:viewed]-(user) 
RETURN user,top;