neo4j - Group relations between two nodes -


i have database nodes can related 5 different relations. trying large query in cypher there way information duplicated, , having memory errors.

imagine following picture:

nodes multiple relations

i results as:

(node1, r1, rel_a, node2) (node1, r2, rel_b, node2) (node1, r3, rel_c, node2) (node1, r4, rel_d, node2) (node1, r5, rel_e, node2) 

the query using looks this:

match (n:node_type_a)-[d:rel1|rel2|rel3|rel4|rel5]->(p) return distinct n,d,type(d),p 

is there way return node1 , node2 once array of relations? way results way smaller , handle them better without memory errors.

try this:

match (n:node_type_a)-[d:rel1|rel2|rel3|rel4|rel5]->(p)  return n, collect(type(d)), p; 

Comments