获取数组中的节点属性值

时间:2015-05-23 19:48:11

标签: neo4j cypher

我可以在数组中返回节点属性值吗?假设我在neo4j中创建了以下节点:

CREATE (p:Person {name:'Ernesto', gender:'male', town:'Cham'})

我可以使用以下方式生成密钥:

MATCH (p:Person {name: 'Ernesto'} )
RETURN keys(p)

将产生:

[name, gender, town]

获得的正确方法是什么:

['Ernesto', 'male', 'Cham']

作为集合,更好的是,获取地图:

{name: 'Ernesto', gender: 'male', town: 'Cham'}

不希望以视觉方式获取此信息作为节点属性,因为它始终包含节点ID。我对通用方法感兴趣,因此可以使用它。

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

不幸的是,用Cypher返回节点的所有属性是不可能的。不过这将是一个很棒的功能。

你得到了一些与之相近的东西:

java.net.BindException: Address already in use: JVM_Bind
    at java.net.DualStackPlainSocketImpl.bind0(Native Method)
    at java.net.DualStackPlainSocketImpl.socketBind(Unknown Source)
    at java.net.AbstractPlainSocketImpl.bind(Unknown Source)
    at java.net.PlainSocketImpl.bind(Unknown Source)
    at java.net.ServerSocket.bind(Unknown Source)
    at java.net.ServerSocket.<init>(Unknown Source)
    at java.net.ServerSocket.<init>(Unknown Source)
    at ListeningThread.run(ListeningThread.java:18)

这将返回一个可以在应用程序中解析的字符串表示形式:

MATCH (n) RETURN str(n) LIMIT 1