Neo4j / cypher:将id作为属性返回

时间:2015-07-21 09:19:46

标签: neo4j cypher

我有两个节点的多汁图形数据库的这个超级简单的密码查询:

MATCH (n) RETURN n

它正在返回两个节点:

{
"results": [
    {
        "columns": [
            "n"
        ],
        "data": [
            {
                "row": [
                    {
                        "name": "node 1",
                        "description": "This is my first node."
                    }
                ]
            },
            {
                "row": [
                    {
                        "name": "node 2",
                        "description": "This is my second node."
                    }
                ]
            }
        ]
    }
],
"errors": []
}

我有点希望将id作为带有“name”和“description”的属性获取。我怎么能在那里得到它?我知道我可以这样:

MATCH (n) RETURN n, id(n)

但是这会把id放在对象之外,我不希望这样。

1 个答案:

答案 0 :(得分:2)

您可以在Cypher {foobar:42}

中使用地图[1,2,3]和集合结构

所以你可以回复:

RETURN {id:id(n), labels: labels(n), data: n}

或者您可以使用

{"statement":"match (n) return n","resultDataContents":["graph"]}

作为POST请求的附加参数。