知识图谱(Knowledge Graph)- Neo4j 5.10.0 使用 - CQL - 太极拳传承谱系表
删除数据库中以往的图
MATCH (n) DETACH DELETE n
创建节点
CREATE命令语法
Neo4j CQL“CREATE”命令用于创建没有属性的节点。 它只是创建一个没有任何数据的节点。
CREATE (
<node-name>:<label-name>
{
<Property1-name>:<Property1-Value>
........
<Propertyn-name>:<Propertyn-Value>
}
)
| 语法元素 | 描述 |
|---|---|
| <node-name> | 它是我们将要创建的节点名称,创建关系时使用到,注意命名 |
| <label-name> | 它是一个节点标签名称 |
| <Property1-name>...<Propertyn-name> | 属性是键值对。 定义将分配给创建节点的属性的名称 |
| <Property1-value>...<Propertyn-value> | 属性是键值对。 定义将分配给创建节点的属性的值 |
1、Neo4j数据库服务器使用此将此节点详细信息存储在Database.As中作为Neo4j DBA或Developer,我们不能使用它来访问节点详细信息。
2、Neo4j数据库服务器创建一个作为内部节点名称的别名。作为Neo4j DBA或Developer,我们应该使用此标签名称来访问节点详细信息。
# 注意node-name不要重复
CREATE (cwt:Person { name:"陈王廷",generation:"创始人"})
CREATE (jf:Person { name:"蒋发",generation:"第二代"})
CREATE (sl:Person { name:"所乐",generation:"第二代"})
CREATE (rx:Person { name:"汝信",generation:"第二代"})
CREATE (zr:Person { name:"正如",generation:"第三代"})
CREATE (xr:Person { name:"恂如",generation:"第三代"})
CREATE (sr:Person { name:"申如",generation:"第三代"})
CREATE (dp:Person { name:"大鹏",generation:"第三代"})
CREATE (dk:Person { name:"大鹍",generation:"第三代"})
CREATE (jx:Person { name:"继夏",generation:"第四代"})
CREATE (jb:Person { name:"敬伯",generation:"第四代"})
CREATE (jue:Person { name:"爵",generation:"第四代"})
CREATE (zs:Person { name:"善志",generation:"第四代"})
CREATE (st:Person { name:"善通",generation:"第四代"})
CREATE (dx:Person { name:"大兴",generation:"第五代"})
CREATE (yz:Person { name:"耀兆",generation:"第五代"})
CREATE (gz:Person { name:"公兆",generation:"第五代"})
CREATE (bw:Person { name:"秉旺",generation:"第五代"})
CREATE (br:Person { name:"秉壬",generation:"第五代"})
CREATE (bq:Person { name:"秉奇",generation:"第五代"})
CREATE (ccx:Person { name:"陈长兴",generation:"第六代"})
CREATE (yb:Person { name:"有本",generation:"第六代"})
CREATE (yh:Person { name:"有恒",generation:"第六代"})
CREATE (ylc:Person { name:"杨露禅",generation:"第七代"})
CREATE (gy:Person { name:"耕耘",generation:"第七代"})
CREATE (ybh:Person { name:"杨班候",generation:"第八代"})
CREATE (yx:Person { name:"延熙",generation:"第八代"})
CREATE (yn:Person { name:"延年",generation:"第八代"})
CREATE (cfk:Person { name:"陈发科",generation:"第九代"})
CREATE (wy:Person { name:"王雁",generation:"第九代"})
CREATE (cbz:Person { name:"陈宝璩",generation:"第九代"})
CREATE (wep:Person { name:"王二平",generation:"第九代"})
CREATE (wfl:Person { name:"王福礼",generation:"第十代"})
CREATE (zlh:Person { name:"朱老虎",generation:"第十代"})
CREATE (wcj:Person { name:"王长江",generation:"第十代"})
CREATE (cez:Person { name:"曹二柱",generation:"第十代"})
CREATE (zl:Person { name:"朱路",generation:"第十一代"})
CREATE (zf:Person { name:"朱峰",generation:"第十一代"})
CREATE (zc:Person { name:"朱超",generation:"第十一代"})
CREATE (zbl:Person { name:"朱堡垒",generation:"第十一代"})
CREATE (zzl:Person { name:"张中林",generation:"第十一代"})

查询节点
MATCH命令
MATCH
(
<node-name>:<label-name>
)
注意事项
- Neo4j 数据库服务器使用此 将此节点详细信息存储在 Database.As 中作为 Neo4j DBA 或 Developer,我们不能使用它来访问节点详细信息。
- Neo4j 数据库服务器创建一个 作为内部节点名称的别名。作为 Neo4j DBA 或 Developer,我们应该使用此标签名称来访问节点详细信息。
# 查询Dept下的内容
MATCH (dept:Dept) return dept
# 查询Employee标签下 id=123,name="Lokesh"的节点
MATCH (p:Employee {id:123,name:"Lokesh"}) RETURN p
## 查询Employee标签下name="Lokesh"的节点,使用(where命令)
MATCH (p:Employee)
WHERE p.name = "Lokesh"
RETURN p
MATCH & RETURN匹配和返回
MATCH (n:Person {name:"陈长兴"}) RETURN n
MATCH (n:Person {name:"陈长兴"}) RETURN n.generation


创建关系
根据属性图模型,关系应该是定向的。 否则,Neo4j将抛出一个错误消息。
基于方向性,Neo4j关系被分为两种主要类型。
- 单向关系
- 双向关系
在以下场景中,我们可以使用Neo4j CQL CREATE命令来创建两个节点之间的关系。 这些情况适用于Uni和双向关系。
- 在两个现有节点之间创建无属性的关系
- 在两个现有节点之间创建有属性的关系
- 在两个新节点之间创建无属性的关系
- 在两个新节点之间创建有属性的关系
- 在具有WHERE子句的两个退出节点之间创建/不使用属性的关系
CREATE (m:Movie:Cinema:Film:Picture)
新节点无属性关系
CREATE (<node1-name>:<label1-name>)-
[<relationship-name>:<relationship-label-name>]
->(<node2-name>:<label2-name>)
# <node1-name> <节点1名> 它是From节点的名称。
# <node2-name> <节点2名> 它是To节点的名称。
# <label1-name> <LABEL1名称> 它是From节点的标签名称
# <label2-name> <LABEL2名称> 它是To节点的标签名称。
# <relationship-name> <关系名称> 它是一个关系的名称。
# <relationship-label-name> <相关标签名称> 它是一个关系的标签名称。

太极拳传承谱系表
使用新节点创建关系
创建第N代传承人
# 创建辈份
CREATE (FirstGeneration:Hierarchy {title:'陈氏太极创始人'})
# 创建关系
CREATE
(cwt)-[:BELONG_TO]->(FirstGeneration)
# 创建辈份
CREATE (SecondGeneration:Hierarchy {title:'第二代传承人'})
# 创建关系
CREATE
(jf)-[:BELONG_TO]->(SecondGeneration),
(sl)-[:BELONG_TO]->(SecondGeneration),
(rx)-[:BELONG_TO]->(SecondGeneration)

创建传承人之间的师徒关系
使用现有节点创建关系
# 查询已有节点
MATCH (cwt:Person),(jf:Person),(sl:Person),(rx:Person)
# 建立节点关系
CREATE
(jf)-[:APPRENTICE]->(cwt),
(sl)-[:APPRENTICE]->(cwt),
(rx)-[:APPRENTICE]->(cwt)
# 创建关系
MATCH (rx:Person),(dp:Person),(dk:Person)
CREATE
(dp)-[:APPRENTICE]->(rx),
(dk)-[:APPRENTICE]->(rx)
MATCH (dp:Person),(dk:Person),(zs:Person),(bw:Person),(br:Person)
CREATE
(zs)-[:APPRENTICE]->(dp),
(bw)-[:APPRENTICE]->(zs),
(br)-[:APPRENTICE]->(zs)
姓:surname 或者 family name或者 last name
名:first name 或者 forename 或者 given name
字:style name,有时也作courtesy name
号:pseudonym,有时也做(hao)
人称:一般可以翻译成 nicknames
谥号:posthumous title
https://www.w3cschool.cn/neo4j/neo4j_cql_create_node.html
知识图谱(Knowledge Graph)- Neo4j 5.10.0 使用 - CQL - 太极拳传承谱系表的更多相关文章
- 哈工大知识图谱(Knowledge Graph)课程概述
一.什么是知识图谱 知识(Knowledge)可以理解为 精炼的数据,知识图谱(Knowledge Graph)即是对知识的图形化表示,本质上是一种大规模语义网络 (semantic network) ...
- 学习笔记之知识图谱 (Knowledge Graph)
Knowledge Graph - Wikipedia https://en.wikipedia.org/wiki/Knowledge_Graph The Knowledge Graph is a k ...
- 百度大脑UNIT3.0详解之知识图谱与对话
如今,越来越多的企业想要在电商客服.法律顾问等领域做一套包含行业知识的智能对话系统,而行业或领域知识的积累.构建.抽取等工作对于企业来说是个不小的难题,百度大脑UNIT3.0推出「我的知识」版块专门为 ...
- PostgreSQL 10.0 preview 性能增强 - 分区表性能增强(plan阶段加速)
标签 PostgreSQL , 10.0 , 分区表 , 子表 , 元信息搜索性能增强 背景 PostgreSQL 10.0 增强了分区表的子表搜索性能,对于涉及分区表包含子表特别多的QUERY,可以 ...
- 1. 通俗易懂解释知识图谱(Knowledge Graph)
1. 通俗易懂解释知识图谱(Knowledge Graph) 2. 知识图谱-命名实体识别(NER)详解 3. 哈工大LTP解析 1. 前言 从一开始的Google搜索,到现在的聊天机器人.大数据风控 ...
- Multi-Task Feature Learning for Knowledge Graph Enhanced Recommendation(知识图谱)
知识图谱(Knowledge Graph,KG)可以理解成一个知识库,用来存储实体与实体之间的关系.知识图谱可以为机器学习算法提供更多的信息,帮助模型更好地完成任务. 在推荐算法中融入电影的知识图谱, ...
- TIE: A Framework for Embedding-based Incremental Temporal Knowledge Graph Completion 增量时序知识图谱补全论文解读
论文网址:https://dl.acm.org/doi/10.1145/3404835.3462961 论文提出一种用增量学习思想做时序知识图谱补全(Temporal Knowledge Graph ...
- springboot2.0+Neo4j+d3.js构建知识图谱
Welcome to the Neo4j wiki! 初衷这是一个知识图谱构建工具,最开始是对产品和领导为了做ppt临时要求配合做图谱展示的不厌其烦,做着做着就抽出一个目前看着还算通用的小工具 技术栈 ...
- 使用图数据库 Nebula Graph 数据导入快速体验知识图谱 OwnThink
前言 本文由 Nebula Graph 实习生@王杰贡献. 最近 @Yener 开源了史上最大规模的中文知识图谱--OwnThink(链接:https://github.com/ownthink/Kn ...
- 使用图数据库 Nebula Graph 数据导入快速体验知识图谱
本文由 Nebula Graph 实习生@王杰贡献. 最近 @Yener 开源了史上最大规模的中文知识图谱——OwnThink(链接:https://github.com/ownthink/Knowl ...
随机推荐
- 2022-06-01:给定一个数组arr,可能有正、有负、有0,无序。 只能挑选两个数字,想尽量让两个数字加起来的绝对值尽量小。 返回可能的最小的值。
2022-06-01:给定一个数组arr,可能有正.有负.有0,无序. 只能挑选两个数字,想尽量让两个数字加起来的绝对值尽量小. 返回可能的最小的值. 答案2022-06-01: 排序,双指针. 代码 ...
- 2021-04-15:给定一个由字符串组成的数组strs,必须把所有的字符串拼接起来,返回所有可能的拼接结果中,字典序最小的结果。
2021-04-15:给定一个由字符串组成的数组strs,必须把所有的字符串拼接起来,返回所有可能的拼接结果中,字典序最小的结果. 福大大 答案2021-04-15: "b"和&q ...
- 【python基础】编写/运行hello world项目
1.编写hello world项目 编程界每种语言的第一个程序往往都是输出hello world.因此我们来看看,如何用Python输出hello world. 1.如果你是初学者,main.py中的 ...
- Vue3.3 的新功能的体验(下):泛型组件(Generic Component) 与 defineSlots
上一篇说了 DefineOptions.defineModel.Props 的响应式解构和从外部导入类型 这几个新功能,但是没有说Generic.defineSlots等,这是因为还没有完全搞清楚可以 ...
- 详解RocketMQ 顺序消费机制
摘要:顺序消息是指对于一个指定的 Topic ,消息严格按照先进先出(FIFO)的原则进行消息发布和消费,即先发布的消息先消费,后发布的消息后消费. 本文分享自华为云社区<RocketMQ 顺序 ...
- 第四章 IDEA的安装与使用
网上一大推的教程
- GPT3的局限性:语言多样性、语言理解能力、数据量
目录 GPT-3 的局限性:语言多样性.语言理解能力.数据量 随着人工智能技术的不断发展,越来越多的语言模型被开发出来,其中最具代表性的就是 GPT-3.然而,尽管 GPT-3 已经在自然语言处理领域 ...
- GPU技术在大规模计算和并行计算中的应用和挑战
目录 1. 引言 2. 技术原理及概念 3. 实现步骤与流程 4. 应用示例与代码实现讲解 5. 优化与改进 GPU 技术在大规模计算和并行计算中的应用和挑战 随着计算机硬件的不断发展和计算能力的提高 ...
- Linux系统运维之负载均衡Tengine
一.介绍 Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到 ...
- Java版人脸跟踪三部曲之一:极速体验
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 关于<Java版人脸跟踪三部曲>系列 -& ...