Neo4j - Return 来自密码的伪关系

Neo4j - Return a Pseudo relationship from a cypher

在 Neo4j 中,您可以很容易地 return 伪节点(例如 return {Name:'dummy node'} return 名称为 属性 的节点)。我广泛使用它来检查使用 Load CSV.

创建的节点数

你是怎么return伪关系的?我想在不实际更改基础数据的情况下查看由于我的合并查询而创建的关系数。

我尝试了多种方法,但都失败了:

return {Name:'dummy node'}-->{Name:'dummy node2'}`;
Neo.ClientError.Statement.SyntaxError
Invalid input '>': expected 0..9, '.', UnsignedHexInteger, UnsignedOctalInteger or UnsignedDecimalInteger (line 1, column 29 (offset: 28))
"return {Name:'dummy node'}-->{Name:'dummy node2'}"
return ({Name:'dummy node'}-->{Name:'dummy node2'});
Neo.ClientError.Statement.SyntaxError
Invalid input '>': expected 0..9, '.', UnsignedHexInteger, UnsignedOctalInteger or UnsignedDecimalInteger (line 1, column 30 (offset: 29))
"return ({Name:'dummy node'}-->{Name:'dummy node2'})"
return {{Name:'dummy node'}-->{Name:'dummy node2'}};
Neo.ClientError.Statement.SyntaxError
Invalid input '{': expected whitespace, an identifier, UnsignedDecimalInteger, a property key name or '}' (line 1, column 9 (offset: 8))
"return {{Name:'dummy node'}-->{Name:'dummy node2'}}"

使用 APOC 插件,您可以创建 virtual nodes and relationships 实际上不存在于数据库中的内容。

例如:

CALL apoc.create.vNode(['Node1'], {name: 'dummy node 1'}) YIELD node AS a
CALL apoc.create.vNode(['Node2'], {name: 'dummy node 2'}) YIELD node AS b
CALL apoc.create.vRelationship(a, 'FOO', {}, b) YIELD rel
RETURN a, b, rel

顺便说一下,{Name:'dummy node'} 只是一个 属性 映射 -- 不是节点。