Graph 使用constants.DATA\u图形理解密码查询的输出

Graph 使用constants.DATA\u图形理解密码查询的输出,graph,neo4j,cypher,Graph,Neo4j,Cypher,当我调用这种格式的Neo4j REST API时,我得到的结果比我预期的要多,结果也更复杂 密码版本:密码2.2 例如,在具有这种节点排列的图形中 (Bob) --> (Amy) --> (Cal) 。。。而查询 MATCH (n) OPTIONAL MATCH (a)-[r]-(b) RETURN DISTINCT n, r 。。。返回的结果之一如下所示: { "relationships": [ { "id":"270" , "type":"LIKES"

当我调用这种格式的Neo4j REST API时,我得到的结果比我预期的要多,结果也更复杂

密码版本:密码2.2

例如,在具有这种节点排列的图形中

(Bob) --> (Amy) --> (Cal)
。。。而查询

MATCH (n)
OPTIONAL MATCH (a)-[r]-(b)
RETURN DISTINCT n, r
。。。返回的结果之一如下所示:

{ "relationships": [
    { "id":"270"
    , "type":"LIKES"
    , "startNode":"134"
    , "endNode":"136"
    , "properties":{}
    }
  ]
, "nodes": [
    { "id":"134"
    , "labels":["Person"]
    , "properties":{"name":"Amy"}
    }
  , { "id":"135"
    , "labels":["Person"]
    , "properties":{"name":"Bob"}
    }
  , { "id":"136"
    , "labels":["Person"]
    , "properties":{"name":"Cal"}
    }
  ]
}
如果我理解正确,这表明艾米(134)和卡尔(136)之间存在直接关系。就我所知,鲍勃在艾米和卡尔之间没有位置。那么,为什么鲍勃会出现在这个条目中呢

我还得到了重复的条目。例如,此条目出现两次:

{ "relationships": [
    { "id":"264"
    , "type":"LIKES"
    , "startNode": "134"
    , "endNode":"136"
    ,"properties":{}
    }
  ]
, "nodes": [
    { "id":"134"
    , "labels":["Person"]
    , "properties":{"name":"Amy"}
    }
  , { "id":"136"
    , "labels":["Person"]
    , "properties":{"name":"Cal"}
    }
  ]
}
在我的测试中,我看到有2个或3个节点的行。是否有可能在一行中看到更多节点?如果
关系
条目包括
开始节点
结束节点
,是否可以安全地假设从一个节点到另一个节点存在直接链接,并且可以忽略该行的
节点
部分中显示的任何其他节点


有没有什么地方可以让我找到有关如何计算
图形
输出的完整解释?

因为您的
可选匹配中有一个打字错误,根本没有提到
n

你也应该使用标签

MATCH (n)
OPTIONAL MATCH (n)-[r]-()
RETURN DISTINCT n, r