版本:Neo4j 3.2.0,社区版
环境:macOS Sierra 10.12.6
浏览器:Safari 11.0
我看到neo4j
的浏览器控制台如何返回关系的行为不一致。我用一个非常简单的例子来证明:
CREATE (g:Whale {color: "gray"}) WITH g
CREATE (b:Whale {color: "blue"}) WITH g, b
MERGE (g)-[:SWIMS_WITH]->(b)
RETURN g, b
这可以按预期工作。现在,让我们看看我们是否可以返回:SWIMS_WITH
关系。
MATCH (g:Whale {color: "gray"}) WITH g
MATCH (b:Whale {color: "blue"}) WITH g, b
MATCH (g)-[sw:SWIMS_WITH]->(b)
RETURN sw
浏览器控制台响应表明已返回0 nodes, 0 relationships
。但是如果我们返回路径会怎么样:
MATCH (g:Whale {color: "gray"}) WITH g
MATCH (b:Whale {color: "blue"}) WITH g, b
MATCH p=(g)-[sw:SWIMS_WITH]->(b)
RETURN p
此查询正确定位并显示2个节点和连接它们的单个链接。让事情进一步混乱,如果我将属性附加到:SWIM_WITH
关系,那么查询将正确返回关系(使用所述属性):
MATCH (g:Whale {color: "gray"}) WITH g
MATCH (b:Whale {color: "blue"}) WITH g, b
MATCH (g)-[sw:SWIMS_WITH]->(b)
SET sw.speed = "22 knots"
RETURN sw
我希望这纯粹是neo4j
浏览器控制台中的错误。但如果是其他的话,请说出来。