首页 > 解决方案 > 如何在 Neo4j 中解析 json 并使用 foreach 创建节点?

问题描述

示例 json:

{
    "data": [
            {
                "file" : "1.txt",
                "type" : "text"
            },
            {
                "file" : "2.json",
                "type" : "json"
            },
            {
                "file" : "1.html",
                "type" : "html"
            }
    ]
}

我正在尝试使用文件和类型作为属性创建 3 个节点

我正在使用以下查询在 neo4j 中创建节点

WITH {json} AS document 
UNWIND document.data AS data
FOREACH (node in data| CREATE(m:`member`) SET m = node )

使用 py2neo 驱动程序时出现以下错误:

AttributeError: 'module' object has no attribute 'SyntaxError'

标签: neo4jcypherpy2neogqlneo4j-apoc

解决方案


在您的情况下请使用 UNWIND 或 FOREACH

WITH {json} AS document 
UNWIND document.data AS data
CREATE(m:`member`) SET m = data

或者

WITH {json} AS document 
FOREACH (node in document.data | CREATE(m:`member`) SET m = node )

推荐阅读