Neo4j 从记录列表中创建节点时,如何传递datetime属性?
我正在评估生产软件中使用的Neo4j和Cypher,我正在从SQL server迁移数据,但为此,我没有使用LOADCSV Cypher命令,因为我需要对创建的节点和关系进行更多控制。 我现在所做的与此类似: { “道具”:[{ “姓名”:“安德烈斯”, “职位”:“开发者”, “日期”:“2018-01-01” }, { “姓名”:“迈克尔”, “职位”:“开发商” } ] } 将$props作为地图展开 创建(n:个人) 集合n=映射 我试图实现的是将date属性设置为正确的数据类型(datetime)。有没有办法告诉cypher将该字段解析为日期时间 注意:我已经尝试过“SET n.Date=datetime(map.Date)”方法,但这也会将属性日期添加到第二条记录中,我不需要这样做Neo4j 从记录列表中创建节点时,如何传递datetime属性?,neo4j,cypher,Neo4j,Cypher,我正在评估生产软件中使用的Neo4j和Cypher,我正在从SQL server迁移数据,但为此,我没有使用LOADCSV Cypher命令,因为我需要对创建的节点和关系进行更多控制。 我现在所做的与此类似: { “道具”:[{ “姓名”:“安德烈斯”, “职位”:“开发者”, “日期”:“2018-01-01” }, { “姓名”:“迈克尔”, “职位”:“开发商” } ] } 将$props作为地图展开 创建(n:个人) 集合n=映射 我试图实现的是将date属性设置为正确的数据类型(dat
顺便说一句,我真的很喜欢与Neo4j一起工作;) 您可以使用这样一个事实,即如果赋值为NULL,则不会创建或删除属性:
WITH [ { name: "Andres", position: "Developer", date: "2018-01-01" },
{ name: "Michael", position: "Developer" } ] AS props
UNWIND props AS map CREATE (n:Person)
SET n = map,
n.date = CASE WHEN n.date IS NULL THEN NULL ELSE datetime(n.date) END
RETURN n