Рекурсивный запрос Cypher для графа MLM - PullRequest
1 голос
/ 18 марта 2020

У меня есть график MLM, где любой клиент может поделиться бизнесом с другим клиентом. поэтому я разработал модель, такую ​​как Узлы для акций, клиентов, предприятий и ребер для источника (для бизнеса), от, до.

enter image description here

Сейчас всякий раз, когда клиент (c4) совершал покупку с бизнесом (b3), я должен распределять вознаграждения по восходящим сетевым узлам (клиентам), таким как

c4 -> c6 -> c5 -> b3
c4-> c3 -> c2 -> c1 -> b2
c1 -> b1

Итак, всего узлов: c1, c2, c3, c4, c5, c6, b1, b2, b3 (9 узлов, включая c4)

Я пытался выполнить приведенный ниже запрос

match(:Customer{name:"c4"})<-[:to]-(s:Share)<-[:from]-(f),(s)-[:source]->(b) return f,b

, но он не работает рекурсивно.

Пожалуйста, помогите мне расширить этот запрос, чтобы получить правильный вывод.

Спасибо

...