目录
- Neo4j简介
- Neo4j安装与使用
- 基础命令
一、Neo4j 简介
Neo4j形态
- 特点:节点与连线
Neo4j关系图示例
Neo4j定义
- Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中
Neo4j特点
- 非关系型数据库
- NoSql
- 使用CQL语言
- 遵循SQL语法,简单,且人性化
二、Neo4j安装与使用
安装
- 下载Server版网址:https://neo4j.com/download-center/#community
-
配置环境变量
使用
- 运行Neo4j
-
neo4j console
-
Neo4j 4.0.1版本及以上不支持JAVA8,所以需要更新JAVA至11以上
- 访问端口输入默认账号密码
-
neo4j
-
-
修改账号密码
三、基础命令
创建标签节点
- 打开浏览器
- 创建emp节点,标签为Employee
create(emp:Employee)
- 创建XiaoHong节点,带有属性
-
CREATE(XiaoHong:People{ no:1,age:10,gender:"M"})
-
标签就相当于一个人的外号
什么是节点
-
图中每个人都是节点
数据库中显示节点
添加属性
- 创建带属性的节点
CREATE (book:Book{title:"book1",pages:340,price:250})
- 添加属性
match (book{title:"book1"})
set book.name =“hello"
return book
shift+enter
键可以换行;return
可以直接返回当前节点。
查询
- 检索节点的age属性
-
MATCH
需要与RETURN
一起使用
MATCH (XiaoF Hong:People)
RETURN XiaoHong.age
- 检索节点的所有属性
-
MATCH
与RETURN
不能单独使用
MATCH (XiaoHong:People)
RETURN XiaoHong
关系
- 创建关系
- 方法一:
CREATE (p1:Profile1)-[r1:LIKES]->(p2:Profile2)
- 方法二:
match(a:People),(b:People) where a.name="xiaohong" And b.name="WangWu" create (a)-[r1:Friends]->(b)
- 方法一:
- 在已有的节点下创建关系(如果要创建多个关系可以重复执行)
match (a{name:"xiaohong"}),b({name:"limei"})
create (a)-[r1:friends]->(b)
删除节点、关系和属性
-
删除相应属性下的节点
-
MATCH (e:People) DELETE e
-
删除带有关系的节点
MATCH (cc: Profile1)-[Friends]->(c:Profile2)
DELETE cc,c,Friends
- 删除属性
match (book{title:"book1"})
Remove book.price
Return book
Delete与Remove
- DELETE操作用于删除节点和关联关系
- REMOVE操作用于删除标签和属性
四、额外补充
- 删除标签:
MATCH (m:Movie)
REMOVE m:Picture
- 排序:
MATCH (emp:Employee)
RETURN emp.empid,emp.name,emp.salary,emp.deptno
ORDER BY emp.name DESC
- 更高级的查询:
MATCH (emp:Employee)
WHERE emp.name= 'Abc'
RETURN emp