J'ai un graphique qui représentera la hiérarchie pour les nœuds comme celui-ci. Disons que celui-ci représente la hiérarchie complète mais j'ai aussi besoin de créer un résultat intermédiaire en regroupant à différents niveaux. Supposons que je demande des données pour le noeud A. Je souhaite regrouper les noeuds à la relation de groupe la plus proche. Je serais d'obtenir quelque chose comme ceci: Regroupement Neo4j avec deux relations
Fondamentalement, les utilisateurs seront autorisés à associer à des nœuds groupe et je dois représenter les données de la manière commode d'afficher un graphique Org.
Je ne sais pas par où commencer pour obtenir la solution optimale.
Voici mon neo4js db:
CREATE (a:Node { name: 'a' }), (b:Node { name: 'b' }),
(c:Node { name: 'c' }), (d:Node { name: 'd' }),
(e:Node { name: 'e' }), (f:Node { name: 'f' }),
(g:Node { name: 'g' }), (h:Node { name: 'h' }),
(g1:Group { name: 'group1'}),
(g2:Group { name: 'group2'}),
(g3:Group { name: 'group3'}),
(a)-[:child]->(b),
(a)-[:child]->(c),
(a)-[:child]->(d),
(b)-[:child]->(e),
(c)-[:child]->(f),
(c)-[:child]->(g),
(c)-[:child]->(h),
(b)-[:belongsTo]->(g1),
(c)-[:belongsTo]->(g2),
(g)-[:belongsTo]->(g3),
(h)-[:belongsTo]->(g3);