Neo4j在python中的基础操作

Neo4j基础知识

一、基本概念

  • 标签:一个节点可以有一个以上的标签
  • 节点:节点是指一个实实在在的对象,这个对象可以有好多的标签,表示对象的种类,也可以有好多的属性描述其特征,节点与节点之间还可以形成多个有方向(或者没有方向)的关系.
  • 关系:用来描述节点与节点之间的关系.
  • 属性:描述节点的特性,采用的是Key-Value结构,可以随意设定来描述节点的特征。

二、查询语法

序号 关键字 关键字作用
1 CREATE 创建
2 MATCH 匹配
3 RETURN 加载
4 WHERE 过滤检索条件
5 DELETE 删除节点和关系
6 REMOVE 删除节点和关系的属性
7 ORDER BY 排序
8 SET 添加或更新属性

三、基本操作

# 删除操作
match (信息:个案信息) where 信息.姓名 ="张琳" delete 信息 #切结后面的的=要加""
         
#创建关系
match(a:个案信息{姓名:"张琳"}),(b:个案信息{姓名:"杨子良"}) merge (a)-[:爸爸]->(b)
                                                            

#快速清空整个数据库
 MATCH (n)
DETACH DELETE n
                                                    
                                                            
                                                            

四、python中的基本操作

from py2neo import Graph,Node, Relationship
test_graph = Graph("http://localhost:7474", auth=("*****","*******")) #新版py2neo的密码登录方式
a = Node('Person', name='Alice') #我觉得a就代表着这个节点
b = Node('Person', name='Bob')
r = Relationship(a, 'KNOWS', b)
a['age'] = 20 #添加属性
b['age'] = 21
r['time'] = '2017/08/31'
a.setdefault('location', '北京') #通过 setdefault() 方法赋值默认属性
#利用updata进行批量更新
data = {'name': 'Amy','age': 21}
a.update(data)


print(a, b, r)

#构建子图:是 Node 和 Relationship 的集合
a = Node('Person', name='Alice')
b = Node('Person', name='Bob')
r = Relationship(a, 'KNOWS', b)
s = a | b | r
print(s)


#使用 order_by() 进行排序
from py2neo import Graph, NodeMatcher

graph = Graph(password='123456')
selector = NodeMatcher(graph)
persons = selector.select('Person').order_by('_.age')
print(list(persons))




posted @ 2022-03-21 13:33  小杨的冥想课  阅读(234)  评论(0编辑  收藏  举报