我正在尝试使用apoc过程在Neo4j中获取person节点的子图。
我尝试使用apoc.map.submap()函数,这是我在neo4j apoc文档中找到的。我的密码查询如下:
MATCH (p:person)
RETURN apoc.map.submap(p{.*}, ["name", "id"],null, true)
预期成果:
{
"name" : "Tom",
"id" : 23
}
输出:
Neo.ClientError.Statement.SyntaxError:未知函数“apoc.map.submap”
如何解决这一问题?
发布于 2019-06-24 07:41:05
当我在我的Neo4j上运行您的查询时,我不会得到未知的过程错误。您很可能没有在您的Neo4j服务器上安装APOC插件。下面是如何做到这一点:Apoc github
编辑:
我尝试用我自己的数据库:
MATCH (p:User) return apoc.map.submap(p{.*}, ["username", "uuid"], null, true)
输出:
{
"uuid": "1d69d...",
"username": "admin......"
}
如果无法使其工作,您可以尝试这样的方法(与请求的输出不完全相同):
MATCH (p:User) WITH apoc.map.values(p{.*}, ["username", "uuid"], true) AS values UNWIND values[0] as username UNWIND values[1] as uuid return username, uuid
https://stackoverflow.com/questions/56739895
复制