Graph 如何计算Neo4j中有多少节点的输入和输出度大于2?

Graph 如何计算Neo4j中有多少节点的输入和输出度大于2?,graph,neo4j,cypher,Graph,Neo4j,Cypher,我想知道在使用Cypher的Neo4j中有多少节点的输入和输出度大于2。这应该可以做到: MATCH (n) OPTIONAL MATCH (n)-[out]->() OPTIONAL MATCH (n)<-[in]-() WITH n, COUNT(out) AS outDegree, COUNT(in) AS inDegree WHERE outDegree > 2 AND inDegree > 2 RETURN COUNT(n) 匹配(n) 可选匹配(n)-[

我想知道在使用Cypher的Neo4j中有多少节点的输入和输出度大于2。

这应该可以做到:

MATCH (n)
OPTIONAL MATCH (n)-[out]->()
OPTIONAL MATCH (n)<-[in]-()
WITH n, COUNT(out) AS outDegree, COUNT(in) AS inDegree
WHERE outDegree > 2
  AND inDegree > 2
RETURN COUNT(n)
匹配(n)
可选匹配(n)-[out]->()
可选匹配(n)2
和inDegree>2
返回计数(n)

这应该可以做到:

MATCH (n)
OPTIONAL MATCH (n)-[out]->()
OPTIONAL MATCH (n)<-[in]-()
WITH n, COUNT(out) AS outDegree, COUNT(in) AS inDegree
WHERE outDegree > 2
  AND inDegree > 2
RETURN COUNT(n)
匹配(n)
可选匹配(n)-[out]->()
可选匹配(n)2
和inDegree>2
返回计数(n)
匹配(n)
其中大小((n)-->())>2和大小((n)2
返回计数(n)
匹配(n)
其中大小((n)-->())>2和大小((n)2
返回计数(n)

输入和输出度数都大于2,或者它们的总数?输入和输出度数都大于2,或者它们的总数?虽然这样做有效(向上投票),但我发现计数不必要且昂贵,并使用size()发布了我的解决方案…此外,OP显然只对节点数量感兴趣,而不是实际内容。好的一点是,我倾向于忘记这样一个事实,即您可以在
WHERE
中使用模式以及
size
。虽然这样做有效(向上投票),但我发现count不必要地昂贵,并使用size()发布了我的解决方案…而且OP显然只对节点的数量感兴趣,而不是实际内容。好的一点,我倾向于忘记这样一个事实,即您可以在
WHERE
size
中使用模式。我想知道
DISTINCT
是否有必要-
匹配(n)
已返回唯一的结果。我想知道是否有必要使用
DISTINCT
-
匹配(n)
已返回唯一的结果。