neo4j新手教程

news/2025/2/11 18:48:18/

neo4j新手教程

本文通过一个实际的案例来一步一步使用Cypher来操作Neo4j。

这个案例的节点主要包括专业和课程两类,课程和课程之间有前置、并列等关系,专业和课程之间有包含等关系。

1、(可选)首先,我们删除数据库中以往的图,确保一个空白的环境进行操作:

MATCH (n) DETACH DELETE n

MATCH是匹配操作,而小括号()代表一个节点node(可理解为括号类似一个圆形),括号里面的n为标识符。

2、我们创建一个课程节点:

CREATE (n:Class {name:'大学英语Ⅱ'}) RETURN n

CREATE是创建操作,Class是标签,代表节点的类型。花括号{}代表节点的属性,属性类似Python的字典。这条语句的含义就是创建一个标签为Class的节点,该节点具有一个name属性,属性值是大学英语Ⅱ。

如图所示,在Neo4j的界面上可以看到创建成功的节点,👍。
在这里插入图片描述
3、我们继续来创建更多的课程节点,并分别命名:

CREATE (n1:Class {name:'大学英语Ⅱ'}) 
CREATE (n2:Class {name:'大学英语Ⅲ'}) 
CREATE (n3:Class {name:'大学英语Ⅳ'}) 
RETURN n1,n2,n3

如图所示,3个课程节点创建成功
在这里插入图片描述
4、接下来创建专业节点

CREATE (m1:profession {name:'计算机专业'})
CREATE (m2:profession {name:'软件工程'})
CREATE (m3:profession {name:'大数据'})
CREATE (m4:profession {name:'信管'})
RETURN m1,m2,m3,m4

在这里插入图片描述

如果节点很多时语句创建会很麻烦,建议 导入

5、接下来创建关系

CREATE (n1:class {name: "大英Ⅱ"}) 
CREATE (n2:class {name: "大英Ⅲ"}) 
CREATE (n1)-[r:BASIC]->(n2)
RETURN n1, n2

这里的方括号[]即为关系,BASIC为关系的类型。注意这里的箭头–>是有方向的,表示是从n1到n2的关系。 如图,大英Ⅱ和大英Ⅲ之间建立了BASIC关系,通过Neo4J的可视化很明显的可以看出: 在这里插入图片描述
6、关系也可以增加属性

CREATE (n1:class {name: "大英Ⅱ"}) 
CREATE (n2:class {name: "大英Ⅲ"}) 
CREATE (n1)-[r:BASIC {since:2021}]->(n2)
RETURN n1, n2

在关系中,同样的使用花括号{}来增加关系的属性,也是类似Python的字典,这里给BASIC关系增加了since属性,属性值为2021,表示他们建立前置关系的时间。

7、接下来增加更多的关系

CREATE (n1:class {name: "大英Ⅱ"}) 
CREATE (n2:class {name: "大英Ⅲ"}) 
CREATE (n3:Class {name:'大英Ⅳ'}) 
CREATE (n1)-[r1:BASIC]->(n2)
CREATE (n2)-[r2:BASIC]->(n3)
RETURN n1, n2,n3
也可以在创建节点的时候建立关系,如例子:CREATE (a:Person {name:'Todd'})-[r:FRIENDS]->(b:Person {name:'Carlos'})

在这里插入图片描述
8、然后,我们需要建立不同类型节点之间的关系-课程和专业的关系

CREATE (n1:class {name: "大英Ⅱ"}) 
CREATE (n2:class {name: "大英Ⅲ"}) 
CREATE (n3:Class {name:'大英Ⅳ'}) 
CREATE (m1:profession {name:'计算机专业'})
CREATE (m2:profession {name:'软件工程'})
CREATE (m3:profession {name:'大数据'})
CREATE (m4:profession {name:'信管'})
CREATE (n1)-[r1:BASIC]->(n2)
CREATE (n2)-[r2:BASIC]->(n3)
CREATE (m1)-[r3:REQUIRE]->(n1)
CREATE (m2)-[r4:REQUIRE]->(n1)
CREATE (m3)-[r5:REQUIRE]->(n1)
CREATE (m4)-[r6:REQUIRE]->(n1)
RETURN n1, n2,n3,m1,m2,m3,m4

在这里插入图片描述

待续……

参考资料:
知识图谱系列之neo4j入门
手把手教你快速入门知识图谱 - Neo4J教程


http://www.ppmy.cn/news/591400.html

相关文章

Neo4j入门操作

最近因为项目建模需要使用到图数据库,搜了一圈,发现Neo4j就不错,于是开始鼓捣。 1. 安装 下载地址:https://neo4j.com/download-center/ 官方提供了很多可选的下载项,企业版,社区版,桌面版。…

Neo4j2-Neo4j基础操作(上)

目录 一、图数据库的基本概念 1. 节点 2. 关系 3. 路径 二、Cypher查询语言 三、节点相关操作 1. 创建节点 2. 查询节点 3. 修改节点 4. 删除节点 一、图数据库的基本概念 一个图由无数个节点和关系组成 1. 节点 (1) 节点是图的基本元素之一,图的数据存储在节点中…

HTML5期末大作业:动漫网站设计——火影忍者动漫(7页) HTML+CSS+JavaScript 漫画网页制作作业_电影网页设计...

HTML5期末大作业:动漫网站设计——火影忍者动漫(7页) HTMLCSSJavaScript 漫画网页制作作业_电影网页设计… 常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 明星、 服装、 体育、 化妆品、 物…

Neo4j4-Neo4j基础操作(下)

一、merge 操作 1. merge 子句简介 (1) merge 子句的作用有2个,当模式(Pattern)存在时,匹配该模式;当模式不存在时,创建新模式。功能是 match 和 create 的组合 (2) 在 merge 子句后,可以显式指…

Neo4j3-Neo4j基础操作(中)

一、关系操作 1. 创建关系 (1) 关系模式的构成:起始节点 - [变量名:关系类型 {属性名1:属性值1,属性名2:属性值2,...,属性名n:属性值n}] -> 结束节点 (2) 在创建关系时,必须指定关系类型 (3) 关系带有方向,箭头的方向代表关系的方向 (3) 创…

深入了解 Golang 文件操作:从创建到复制,掌握文件读写的基本操作和高效处理大文件的技巧

摘要:在 Golang 中,文件操作是日常开发中不可或缺的一部分。本文将介绍如何使用 Golang 进行文件操作的基本操作,包括创建文件、写入文件、读取文件和复制文件。此外,还将探讨如何在不打开文件的情况下进行文件的读写操作,以及如何高效处理大文件。 学习目标 本文旨在帮助…

免费空间提供永久免费个人网站空间申请

1、米特网,自2013年初立项开发,于2014年2月上线,是一家专注于提供个性互联网域名的网络平台。 通过米特网,用户不花一分钱就可以永久拥有专属自己的个性域名。 2、域客士,域客士英文名UQC是一个专门为博客、QQ空间、微…

做网站如何申请网站空间?

做网站域名申请下来就要开始申请空间了,空间是网站的重要组成部分,它的好坏直接影响网站日后的速度,安全和稳定性。那么我们应该怎么来选择空间呢,先说一下空间理论上是服务器上的一块存储区域,占有服务器部分资源&…