如何解决 Neo4j 中变量未定义的错误
How to solve variable not defined error in Neo4j
Match (a)-[:RECEIVES]->(b)
WITH avg(toFloat(b.rating)) AS avg
WHERE avg > 2.5
RETURN b.pID, avg
此代码出现以下错误。
Variable `b` not defined
"RETURN b.pID, avg"
您的查询有(至少)2 个问题:
WITH
子句未指定 b
,因此 b
未绑定。
- 由于您对所有
b
个节点进行平均,因此 return 它们的 pID
值的 集合 实际上更有意义平均值。
例如:
MATCH ()-[:RECEIVES]->(b)
WITH AVG(TOFLOAT(b.rating)) AS avg, COLLECT(b.pID) as pIDs
WHERE avg > 2.5
RETURN pIDs, avg
注意:如果平均值 <= 2.5,此查询将 return 什么都没有。
Match (a)-[:RECEIVES]->(b)
WITH avg(toFloat(b.rating)) AS avg
WHERE avg > 2.5
RETURN b.pID, avg
此代码出现以下错误。
Variable `b` not defined
"RETURN b.pID, avg"
您的查询有(至少)2 个问题:
WITH
子句未指定b
,因此b
未绑定。- 由于您对所有
b
个节点进行平均,因此 return 它们的pID
值的 集合 实际上更有意义平均值。
例如:
MATCH ()-[:RECEIVES]->(b)
WITH AVG(TOFLOAT(b.rating)) AS avg, COLLECT(b.pID) as pIDs
WHERE avg > 2.5
RETURN pIDs, avg
注意:如果平均值 <= 2.5,此查询将 return 什么都没有。