2

我正在开发一个小型附属结构,以更好地理解图形数据库的概念,同时学习 Neo4J 并看看它能给我带来什么。我已经使用 RDBMS 多年了,Cypher 相当粗糙。我正在尝试建立一个非常简单的会员系统:

附属乔已推荐玛丽、鲍勃和马克。所以,我创建了他们所有的节点并创建了“推荐”关系。现在玛丽指的是朱莉、杰西卡和琼。鲍勃指的是比利和巴克斯特。马克指的是迈克尔和马克思。他们的推荐人不断推荐人。

对于 Joe 的原始推荐人中的每个推荐人,Joe 赚取“一代”。他的第一代是玛丽、鲍勃和马克。他的第二代是朱莉、杰西卡、琼、比利、巴克斯特、迈克尔和马克思。

现在,通过 Cypher 查询,我怎样才能发现他的世代,当然,还能发现他们的号码?他们在树上的位置?我怎么知道他的第 3 代或第 4 代是谁,他们是谁?

脑子里乱七八糟的,希望大家帮忙。

4

1 回答 1

3

文尼,看看http://tinyurl.com/7vryzwz,这就是你要找的,基本上

START referrer=node(1) 
MATCH path=referrer-[:referred*1..]->refferee 
RETURN referrer,refferee, length(path) as generation 
ORDER BY length(path) asc 
于 2012-04-30T06:03:37.423 回答