Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j/Cypher:计算与模式匹配的不同节点组合_Neo4j_Cypher - Fatal编程技术网

Neo4j/Cypher:计算与模式匹配的不同节点组合

Neo4j/Cypher:计算与模式匹配的不同节点组合,neo4j,cypher,Neo4j,Cypher,我在Neo4j图中查询路径。路径包含两个以上的节点。我想计算两节点子路径的不同出现次数 因此,在下面的示例中,我想知道结果行的数量: MATCH ()-->(n1:Label1)-->(n2:Label2)-->() RETURN DISTINCT n1, n2 比如说 RETURN count(DISTINCT n1, n2) (这将适用于单个节点:返回计数(不同的n1)) 如何在Cypher中执行此操作?执行此操作以获取找到每个不同的n1和n2组合的次数: MATCH

我在Neo4j图中查询路径。路径包含两个以上的节点。我想计算两节点子路径的不同出现次数

因此,在下面的示例中,我想知道结果行的数量:

MATCH ()-->(n1:Label1)-->(n2:Label2)-->()
RETURN DISTINCT n1, n2
比如说

RETURN count(DISTINCT n1, n2)
(这将适用于单个节点:
返回计数(不同的n1)


如何在Cypher中执行此操作?

执行此操作以获取找到每个不同的
n1
n2
组合的次数:

MATCH ()-->(n1:Label1)-->(n2:Label2)-->()
RETURN n1, n2, COUNT(*);
COUNT
一样,将同一
中的非聚合项与
RETURN
子句一起用作唯一的“分组键”(因此无需使用
DISTINCT

[更新]

要获得不同的
n1
n2
组合的数量,您可以在这个有点粗糙的查询中聚合两次:

MATCH ()-->(n1:Label1)-->(n2:Label2)-->()
WITH n1, n2, COUNT(*) AS ignored
RETURN COUNT(*) AS nCombos;

你能解释一下Label1和Label2吗?示例-连接到城市节点的人?示例可以是:
(:City)(n2:Person)-[:LIVES-IN]->(:City)
我正在寻找一个查询,以回答以下问题:有多少唯一(
n1
n2
)元组与上述模式匹配?谢谢您的建议!此代码段为每个唯一的
n1、n2
组合生成一个表,其中包含一行,并在
count(*)
列中统计不同组合的出现次数。然而,我对计算唯一的
n1,n2
组合的单个数字感兴趣,因此您建议中的行数。