apoc.trigger.propertiesByKey
Function APOC Full
Usage Examples
This function is used inside a apoc.trigger.add Cypher statement.
We can use it to conditionally run Cypher statements when properties are added or removed.
For example, we can connect nodes with a genre property to a Genre node, with the following trigger:
CALL apoc.trigger.add(
  'triggerTest',
  'UNWIND apoc.trigger.propertiesByKey($assignedNodeProperties, "genre") as prop
   WITH prop.node as n
   MERGE (g:Genre {name: n.genre})
   MERGE (n)-[:HAS_GENRE]->(g)
   ',
  {}
);Let’s now create a Movie node with a genre property:
CREATE (:Movie {title: "The White Tiger", genre: "Crime"});And now let’s find all HAS_GENRE relationships:
MATCH path = ()-[:HAS_GENRE]->()
RETURN path;| path | 
|---|
| (:Movie {genre: "Crime", title: "The White Tiger"})-[:HAS_GENRE]→(:Genre {name: "Crime"}) |