当前位置: 首页> 财经> 金融 > 浏览器打不开网页但能上网_crm客户管理系统方案_临沂百度代理公司有几个_sem工作内容

浏览器打不开网页但能上网_crm客户管理系统方案_临沂百度代理公司有几个_sem工作内容

时间:2025/7/10 14:29:35来源:https://blog.csdn.net/weixin_45014634/article/details/143960344 浏览次数:0次
浏览器打不开网页但能上网_crm客户管理系统方案_临沂百度代理公司有几个_sem工作内容

Python操作neo4j库py2neo使用之创建和查询(二)

py2neo 创建操作

1、连接数据库

from py2neo import Graph
graph = Graph("bolt://100.100.20.55:7687", auth=(user, pwd), name='neo4j')

2、创建Node

from py2neo import Node, Subgraph
# 创建单个节点
node = Node(label='公司',name='XX公司',创始人='XXX')
graph.node.create(node) 
data = {"name": "XX公司","创始人": "XX"
}
node = Node(label='公司', **data)
graph.node.create(node) 
# 创建多个节点
node1 = Node("Person", name="司马师", age=18)
node2 = Node("Person", name="司马懿", age=18)
node3 = Node("Person", name="司马昭", age=18)
nodes = Subgraph([node1, node2, node3])
self.graph.create(new_nodes)
# 批量创建节点, 注意只能创建同一label的节点
from py2neo.bulk import create_nodes 
# 关键字参数
data = [{"name": "司马师", "age": 18},{"name": "司马懿", "age": 18},{"name": "司马昭", "age": 18, "职位": "大司马"}
]
create_nodes(graph.auto(), data, labels=("Person"))# 位置参数
data = [{"司马师", 18},{"司马懿", 18},{"司马昭", 18}
]create_nodes(graph.auto(), data, labels=("Person"), keys=["name", "age"])# 合并节点  根据name合并
node1 = Node("Person", name="司马师", age=18)graph.merge(node1, label='Person', "name")# 批量合并节点  根据name合并
from py2neo.bulk import merge_nodesdata = [{"name": "司马师", "age": 18},{"name": "司马懿", "age": 18},{"name": "司马昭", "age": 18}
]
merge_nodes(graph.auto(), data, labels=("Person", "name"))data = [{"司马师", 18},{"司马懿", 18},{"司马昭", 18}
]merge_nodes(graph.auto(), data, labels=("Person"), keys=["name", "age"])

py2neo 查询操作

1、连接数据库

from py2neo import Graph
graph = Graph("bolt://xx.xx.xx.xx:7687", auth=(user, pwd), name='neo4j')

2、查询节点

# 获取label为公司的单个节点
node = graph.nodes.match(label='公司').first()# 获取label为公司的所有节点
nodes = graph.nodes.match(label='公司').all()# 获取label为公司的10节点
nodes = graph.nodes.match(label='公司').limit(10)# 获取label为公司的10-20的节点
nodes = graph.nodes.match(label='公司').skip(10).limit(10)# 获取label为公司,属性name为''单个节点
node = graph.nodes.match(label='公司', name='XX公司').first()

3、查询关系

# 根据id获取关系
relationship = graph.relationships.get(1)# 获取关系为投资的单个关系
relationship = graph.match_one(r_type='投资')
relationship = graph.relationships.match(r_type='投资').first()# 获取关系为投资的所有关系
relationship = graph.relationships.match(r_type='投资').all()# 获取关系为投资的10关系
relationships = graph.match(r_type='投资', limit=10)# 获取关系为投资的10-20关系
relationship = graph.relationships.match(r_type='投资').skip(10).limit(10)# 获取节点为XX公司,关系为投资的第一个节点
node = graph.nodes.match(lable='公司', name='XX公司').first()
relationship = graph.relationships.match(node=node, r_type='投资').first()

4、查询高级方法

from py2neo import IS_NULL, IS_NOT_NULL, EQ, NE, LT, LE, GT, GE, STARTS_WIH, ENDS_WITH, CONTAINS, LIKE, IN, AND, OR, XOR# IS_NULL
# 获取label为公司的,名称为NULL的节点# IS_NOT_NULL# EQ# NE# LT# LE# GT# GE# STARTS_WIH# ENDS_WITH# CONTAINS# LIKE# IN
# 获取label为公司的,名称叫XX公司、aaa公司的公司
nodes = graph.nodes.match(label='公司', name = IN('XX公司', 'aaa公司')).all()# AND# OR# XOR# where
1
关键字:浏览器打不开网页但能上网_crm客户管理系统方案_临沂百度代理公司有几个_sem工作内容

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: