Java 返回节点ID和完整的节点
我是Neo4j的新手,正在研究spring数据Neo4j存储库。我想获取所有具有所有属性值和节点ID的节点Java 返回节点ID和完整的节点,java,neo4j,spring-data-neo4j,Java,Neo4j,Spring Data Neo4j,我是Neo4j的新手,正在研究spring数据Neo4j存储库。我想获取所有具有所有属性值和节点ID的节点 {name: 'sid',age: 20, id: 123} 一种选择是使用以下查询 match (e: Employee) return {name: e.name, age: e.age, id: ID(e)} 但这里的问题是我必须在JSON定义中显式添加所有属性。Else可以执行以下操作,但这将为我提供嵌套对象,而不是平面对象 match (e: Employee) return
{name: 'sid',age: 20, id: 123}
一种选择是使用以下查询
match (e: Employee) return {name: e.name, age: e.age, id: ID(e)}
但这里的问题是我必须在JSON定义中显式添加所有属性。Else可以执行以下操作,但这将为我提供嵌套对象,而不是平面对象
match (e: Employee) return {obj: e, id: ID(e)}
有人能帮我吗
编辑:实际查询更为复杂,有两个以上不同的节点标签我认为当前的密码语法无法创建包含
e
的所有属性以及额外的id
属性的平面图
但是有一个可行的办法,你可以考虑接受(或过度)。也就是说,在创建时将id
属性添加到每个Employee
节点。这必须在SET
子句中完成,因为新节点的ID在CREATE
子句中不可用。例如:
CREATE (e:Employee {name: "Fred", age: 42})
SET e.id = ID(e)
这样,您的MATCH
查询可以非常简单:
MATCH (e: Employee)
RETURN e;