J'utilise Neo4j, et j'ai un graphique comme celui-ci:Comment imbriquer plusieurs résultats dans neo4j?
A Collection
a beaucoup Image
s:
(`Collection`)-[:contains]->(`Image`)
Un Image
a beaucoup Tag
s:
(`Image`)-[:has_tag]->(`Tag`)
Je veux pour sélectionner mes Collection
s avec certaines conditions, la collecte des images liées et des balises dans une structure imbriquée, de sorte que chaque ligne contient un Collection
distinct, le r images exaltées et une liste d'étiquettes pour chaque image.
MATCH (c:`Collection`) WHERE some_condition_on(c) OPTIONAL MATCH (i:`Image`)<-[:contains]-(c) OPTIONAL MATCH (i)-[:has_tag]->(t:`Tag`) RETURN i, collect(????)
Par exemple, voici comment la sortie peut être:
Node:`Collection `, [
[Node:`Image`, [Node:`Tag`, Node:`Tag`, Node:`Tag`, Node:`Tag`]],
[Node:`Image `, [Node:`Tag`, Node:`Tag`, Node:`Tag`, Node:`Tag`]],
[Node:`Image `, [Node:`Tag`, Node:`Tag`, Node:`Tag`, Node:`Tag`]]
]
Y at-il un moyen d'obtenir cela en utilisant les fonctions de collecte de Neo4j?