【问题标题】:How to set outgoing nodes in Cypher?如何在 Cypher 中设置传出节点?
【发布时间】:2021-10-20 17:32:22
【问题描述】:

我有一个简单的查询:给定一个节点 A,计算节点 A 具有传出链接的节点数,然后将该数字设置为 A 的属性。但是我做不到。

尝试 1

MATCH (n)-->(m) 
SET n.out=count(m)
RETURN n.name,n.out

这会产生错误:

Invalid use of aggregating function count(...) in this context (line 2, column 11 (offset: 28))
"set n.out=count(m)"
           ^

尝试 2

MATCH (n)-->(m) 
WITH count(m) AS o 
SET n.out=o 
RETURN n.name,n.out

这会产生错误:

Variable `n` not defined (line 3, column 5 (offset: 43))
"SET n.out=o"
     ^

这两次错误都在 SET 子句中。但是阅读documentation for SET 我无法确定为什么会发生这些情况。

我无法计算链接,因为对于一对 n,m 可能有几种链接类型。

【问题讨论】:

    标签: variables set cypher


    【解决方案1】:

    您可以通过以下查询获得所需的结果:

    MATCH (n)
    WITH size((n)-->()) as out, n
    SET n.out = out
    RETURN n.name, n.out
    

    【讨论】:

    • 你能说出为什么我制作的代码不起作用吗?另外,在你的WITH子句中,, n到底是什么意思?
    猜你喜欢
    • 2017-07-30
    • 2021-09-15
    • 1970-01-01
    • 1970-01-01
    • 2022-12-30
    • 1970-01-01
    • 2014-04-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多