假设我有一个电影和导演的图表,其中电影通过共同观看相互连接。我想找到类似的导演,即电影倾向于一起观看的导演。
开始 n=node:index(Name="Steven Spielberg") 匹配 n-->m--l<--o 返回 o;
这让我得到了所有相关的导演,但是我如何按连接它们的路径数量对它们进行排序?如果我还可以考虑电影之间的联系,则可以加分。
count(*) 是以 n 开头并以 o 结尾的路径数
START n=node:index(Name="Steven Spielberg")
MATCH n-->m--l<--o
RETURN o,count(*)
order by count(*) desc;
关系权重
START n=node:index(Name="Steven Spielberg")
MATCH path=n-->m--l<--o
RETURN o,sum(reduce(sum=0,r in rels(path) : sum+r.weight)) as weight
ORDER BY weight desc;
START n=node:index(Name="Steven Spielberg")
MATCH path=n-->m--l<--o
RETURN o
ORDER BY length(path);