Skip to content

Instantly share code, notes, and snippets.

@yangyang5214
Created November 2, 2023 08:46
Show Gist options
  • Save yangyang5214/ef5da68753d313160cf603459c6071fb to your computer and use it in GitHub Desktop.
Save yangyang5214/ef5da68753d313160cf603459c6071fb to your computer and use it in GitHub Desktop.
neo4j create or merge relationship

https://neo4j.com/docs/apoc/5/overview/apoc.merge/apoc.merge.relationship/

MATCH (p:Person {name: "Tom Hanks"})
MATCH (m:Movie {title:"You've Got Mail"})
MERGE (p)-[rel:ACTED_IN {roles:['Joe Fox']}]->(m)
ON CREATE SET rel.created = datetime()
ON MATCH SET rel.lastSeen = datetime()
RETURN rel;

or

MATCH (p:Person {name: "Tom Hanks"})
MATCH (m:Movie {title:"You've Got Mail"})
CALL apoc.merge.relationship(p, "ACTED_IN",
  {roles:['Joe Fox']},
  {created: datetime()},
  m,
  {lastSeen: datetime()}
)
YIELD rel
RETURN rel;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment