Neo4j聚合减法节点和属性

时间:2015-05-26 23:31:47

标签: neo4j cypher nodes

我从Neo4j开始并使用图表,我试图获得以下内容:

我必须找到用户数(每个用户是一个节点)与他们拥有的不同名称数之间的减法(差异)。我有16个节点,每个节点都有自己的名称(名称是它拥有的属性之一),但其中一些具有相同的名称(例如节点A具有(名称:Amanda,城市:罗马)和节点B (姓名:阿曼达,城市:巴黎),所以我的名字数量会减少,因为其中一些会被重复。

我试过这个:

 match (n) with n, count(n) as c return sum(c)

这给了我节点的数量。然后我尝试了这个

 match (n) with n, count(n) as nodeC with n, count( distinct n.Name) as 
 nameC return sum(nodeC) as sumN, sum(nameC) as sumC, sumN-sumC

但它不起作用(我不确定即使我的名字也很好,因为当我尝试它时,分开,它也不起作用。)

1 个答案:

答案 0 :(得分:1)

我认为这就是你要找的东西:

MATCH (n)
RETURN COUNT(n) - COUNT(DISTINCT n.name) AS diff;