前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python与neo-4j交互(对py2neo包做的笔记)

python与neo-4j交互(对py2neo包做的笔记)

作者头像
DuncanZhou
发布2020-01-21 10:31:09
4590
发布2020-01-21 10:31:09
举报
文章被收录于专栏:Duncan's BlogDuncan's Blog

1.连接数据库(三种方式相等)

123

graph_1 = Graph()graph_2 = Graph(host="localhost")graph_3 = Graph("http://localhost:7474/db/data")

2.事务操作 a)直接返回结果

1

graph.data("MATCH (a:Person) RETURN a.name, a.born LIMIT 4")

b)以pandas格式返回结果

1

DataFrame(graph.data("MATCH (a:Person) RETURN a.name, a.born LIMIT 4"))

事务操作样例

12345678910

from py2neo import Graph, Node, Relationshipg = Graph()tx = g.begin()a = Node("Person", name="Alice")tx.create(a)b = Node("Person", name="Bob")ab = Relationship(a, "KNOWS", b)tx.create(ab)tx.commit()g.exists(ab)

3.匹配关系 查找alice的所有朋友

12

for rel in graph.match(start_node=alice,rel_type="FRIEND"): print(rel.end_node()['name'])

4.带参数查询

12345

from py2neo import Graphg = Graph()# evaluate()返回结果的第一个值g.run(""MATCH (a) WHERE a.email={x} RETURN a.name",x="bob@acme.com").evaluate()g.run(""MATCH (a) WHERE a.email={x} RETURN a.name",x="bob@acme.com").data()

5.NodeSelector使用,可以使用Cypher语言的where部分

1234567

from py2neo import Graph,NodeSelectorgraph = Graph()selector = NodeSelector(graph)slected = selector.select("Person",name="Keanu Reeves")list(selected)selected = selector.select("Person").where("_.name =~ 'J.*'","1960 <= _.born < 1970")list(selected)

6.删除操作

12

# 删除所有的graph.delete_all()

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-08-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档