set_property
**Set property ** is a collection of Memgraph's dynamical access and edit of node and relationship properties. The procedures included in it involve copying properties from one entity to another.
Trait | Value |
---|---|
Module type | module |
Implementation | C++ |
Graph direction | directed/undirected |
Edge weights | unweighted/weighted |
Parallelism | sequential |
Procedures
You can execute this algorithm on graph projections, subgraphs or portions of the graph.
copyPropertyNode2Node()
Copies properties from one node to another.
Input:
-
subgraph: Graph
(OPTIONAL) ➡ A specific subgraph, which is an object of type Graph returned by theproject()
function, on which the algorithm is run. If subgraph is not specified, the algorithm is computed on the entire graph by default. -
sourceNode: Vertex
➡ The node you want to copy property from. -
sourceProperties: List[string]
➡ List of properties you want to copy from. -
targetNode: Vertex
➡ The node you want to copy property to. -
targetProperties: List[string]
➡ List of properties you want to copy to.
Output:
result: boolean
➡ yieldstrue
if the operation was successful,false
otherwise
Usage:
MATCH (from {id:1}), MATCH (to {id: 2})
CALL set_property.copyPropertyNode2Node(from, ["prop"], to, ["prop"]) YIELD result
RETURN result;
copyPropertyNode2Rel()
Copies properties from one node to another relationship.
Input:
-
subgraph: Graph
(OPTIONAL) ➡ A specific subgraph, which is an object of type Graph returned by theproject()
function, on which the algorithm is run. If subgraph is not specified, the algorithm is computed on the entire graph by default. -
sourceNode: Vertex
➡ The node you want to copy property from. -
sourceProperties: List[string]
➡ List of properties you want to copy from. -
targetRel: Relationship
➡ The relationship you want to copy property to. -
targetProperties: List[string]
➡ List of properties you want to copy to.
Output:
result: boolean
➡ yieldstrue
if the operation was successful,false
otherwise
Usage:
MATCH (from {id:1})-[to:TYPE]->({id: 2})
CALL set_property.copyPropertyNode2Rel(from, ["prop"], to, ["prop"]) YIELD result
RETURN result;
copyPropertyRel2Node()
Copies properties from one relationship to another node.
Input:
-
subgraph: Graph
(OPTIONAL) ➡ A specific subgraph, which is an object of type Graph returned by theproject()
function, on which the algorithm is run. If subgraph is not specified, the algorithm is computed on the entire graph by default. -
sourceRel: Relationship
➡ The relationship you want to copy property from. -
sourceProperties: List[string]
➡ List of properties you want to copy from. -
targetNode: Vertex
➡ The node you want to copy property to. -
targetProperties: List[string]
➡ List of properties you want to copy to.
Output:
result: boolean
➡ yieldstrue
if the operation was successful,false
otherwise
Usage:
MATCH (to {id:1})-[from:TYPE]->({id: 2})
CALL set_property.copyPropertyRel2Node(from, ["prop"], to, ["prop"]) YIELD result
RETURN result;
copyPropertyRel2Rel()
Copies properties from one relationship to another.
Input:
-
subgraph: Graph
(OPTIONAL) ➡ A specific subgraph, which is an object of type Graph returned by theproject()
function, on which the algorithm is run. If subgraph is not specified, the algorithm is computed on the entire graph by default. -
sourceRel: Vertex
➡ The relationship you want to copy property from. -
sourceProperties: List[string]
➡ List of properties you want to copy from. -
targetRel: Vertex
➡ The relationship you want to copy property to. -
targetProperties: List[string]
➡ List of properties you want to copy to.
Output:
result: boolean
➡ yieldstrue
if the operation was successful,false
otherwise
Usage:
MATCH ({id:1})-[from:TYPE]->(to {id: 2}), ({id:3})-[to:TYPE]->(to {id: 4})
CALL set_property.copyPropertyRel2Rel(from, ["prop"], to, ["prop"]) YIELD result
RETURN result;