neo4j - 使用 gremlin 或 cypher 查询整个图

标签 neo4j cypher gremlin

所以,我有一个包含数百万个节点的图,示例是

      watched           director
user1 -------> movie_1 <------ chris nolan
                 ^
user2------------|  
      watched

等等..

我想生成一个查询来计算每个用户观看的电影数量?

然后平均观看的电影数量? 我如何在 gremlin/cypher 中执行此操作

最佳答案

这是 Gremlin 方法...首先针对每个人观看的电影(请注意,编写此代码是为了在 Gremlin REPL 中运行):

m = [:]
g.E.has('label','watched').groupCount(m){it.outV.next()}.iterate()

上面的代码显示我们迭代所有“观察”边并在每个“观察”边的输出顶点(即用户顶点)上分组。组计数存储在定义为 mMap 中。

现在我们有了 m,我们可以用它来计算平均值:

total = m.values().sum()
avg = total / m.size()

关于neo4j - 使用 gremlin 或 cypher 查询整个图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25654900/

相关文章:

gremlin python克隆遍历

java - Neo4j Spring 数据 NoSuchMethodError

java - 纯粹在内存中运行 Neo4j,没有任何持久性

neo4j - 有没有办法使用 Cypher 为不同的关系遍历 neo4j 路径

gremlin - 在 'as' 内部使用时 'where' 如何工作?

gremlin - 无法从 janusgraph 方案中删除边缘标签

neo4j - 在appharbor上使用neo4j

neo4j - 我想在 Neo4j 中创建和操作属性数组

neo4j - Cypher java 日期查询