讨论一个cypher,时间复杂度比较高,求优秀的查询语句。
发布于 6 年前 作者 atlantis 2209 次浏览 来自 问答

数据格式可以理解为:演员和电影之间的关联,一个电影可以有多个演员,演员指向电影。现在我的需求是求出每两个演员之间一共出演过多少场电影,我写的cypher如下: match (a:user)–>(p:project)<–(b:user) return a.user_id,b.user_id, count ( p ) as pro_num;

以我的眼光看,这个时间复杂度为电影数n*演员之间的两两组合logn,也即O(nlong)。

这个语句的查询速度太慢,效率低下,不知道有没有人能够有更好的办法解决这个问题,在这里先谢过了。

联系方式qq:383750993

1 回复

match (a:user)–>(p:project)<–(b:user) with distinct a,b match (a)->(p:project)<-(b) return a.user_id, b.user_id, count§as pro_num;

回到顶部