cypher - neo4j n-levels的父子关系
问题描述
我有 10-11 级的父子关系,如下所示,我需要在它们之间创建一个父子关系
身份证,父母身份证
1,0
2,1
3,2
4,3
5,4
6,5
到目前为止我尝试了什么?
我使用下面的代码将它们关联为父子
LOAD CSV WITH HEADERS FROM 'file:///parent_child.csv' AS line
MERGE (thisThingHere:employee {id: line.id })
MERGE (parent:Element { id: line.parentid })
MERGE (thisThingHere)-[:PARENT]->(parent)
上面代码的结果是创建父子关系,但它们只关联到一个级别,如下图所示(可作为链接提供),我需要一种方法来关联它们并像树一样显示它。3是4的父母,2是4的祖父母,1是1的曾祖父母,谁能帮助我如何实现它?
解决方案
您需要为父节点和子节点使用相同的节点标签来构建树
LOAD CSV WITH HEADERS FROM 'file:///parent_child.csv'
AS line
MERGE (thisThingHere:Element {id: line.id })
MERGE (parent:Element { id: line.parentid })
MERGE (thisThingHere)-[:PARENT]->(parent)
推荐阅读
- ruby-on-rails-5 - 从 Rails 5.1.4 升级到 Rails 6 时出现问题
- xml - XSD / XML 引用转义
- azure - ServiceBus Dequeue 触发消息 Unmarshalling Golang custom handler in azure:消息格式
- css - 从 HTML 标记访问 bulma.io 变量
- prolog - Prolog:从列表中创建二叉树
- r - 使用转换表 R 转换值
- r - 如何使用 purrr 旋转嵌套数据框?
- javascript - 为什么 :nth-child() 在 JavaScript 中不起作用?
- javascript - iOS 上的 Safari 不允许视频和视频预览
- haskell - 将列表的列表相乘 Haskell