python 实现查询Neo4j多节点的多层关系


Posted in Python onDecember 23, 2019

需求:查询出满足3人及3案有关系的集合

# -*- coding: utf-8 -*-
from py2neo import Graph
import psycopg2

# 二维数组查找
def find(target, array):
 for i, val in enumerate(array):
  for j, temp in enumerate(val):
   if temp == target:
    return True;  
 return False


graph = Graph(host="192.168.3.186://7474", auth=("neo4j", "wabjtam123"))
data = graph.run('match data=(p:anjian)-[:参与 *2..5]-(u:anjian) with p,collect( distinct u.AJBH) as ajbhs match (p:anjian)-[:参与 *1..5]-(c:xyr) with p,ajbhs, collect(distinct c.XYRBH) as xyrbh_list,(ajbhs+p.AJBH) as ajbh_list where size(xyrbh_list)>2 and size(ajbh_list)>2 return p.AJBH as ajbh,ajbh_list,xyrbh_list')

aj = []

xyr_result = []
aj_result = []

for node in data:
 ajbh = node.get('ajbh')
 ajbh_list = node.get('ajbh_list')
 xyrbh_list = node.get('xyrbh_list')
 
 ajbh_list.append(ajbh)
 
 ajbh_list = list(set(node.get('ajbh_list')))
 xyrbh_list = list(set(node.get('xyrbh_list')))
 
 flag = True
 if len(aj_result) > 0:
  for i, val in enumerate(ajbh_list): 
   f = find(val, aj_result) 
   
   if f:
    flag = False
    break;
 
 if flag:
  if len(ajbh_list) > 2 and len(xyrbh_list) > 2:
   aj.append(ajbh) 
   
   
   aj_result.append(ajbh_list) 
   xyr_result.append(xyrbh_list)
   
   
   print('MATCH p=(:anjian{AJBH:"'+ajbh+'"})-[*]-() RETURN p LIMIT 25')
   name = str(len(xyrbh_list)) + "人" + str(len(ajbh_list)) + "案" 
   print(name)

print(len(aj_result))
print(aj)
print('----------------------------')
print(aj_result)

conn = psycopg2.connect(database="zfgfh", user="postgres", password="postgres", host="192.168.3.202", port="5432")
cursor = conn.cursor()
 
for ajbh in aj_result:
 for temp in ajbh:
  insert_sql = "insert into test.gm (\"ajbh\") values ('%s')"
  insert_sql = insert_sql % temp
  print(insert_sql)
  # 插入
  cursor.execute(insert_sql)
# 提交
conn.commit() 
cursor.close() # 关闭Cursor
conn.close() # 关闭数据库

python 实现查询Neo4j多节点的多层关系

6人3案
4人5案
3人6案
11人3案
3人13案
6人46案
8人4案
5人4案
7人4案
28人17案
4人4案
3人8案
4人4案
8人3案
6人6案
5人4案
4人6案
19人77案
4人22案
4人14案
4人5案
9人5案
12人8案
4人3案
17人4案
5人7案
18人30案
7人11案
3人22案
20人12案
30
['A2301260500002019020002', 'A2301096000002018040010', 'A2301246400002018060001', 'A2301270500002018040003', 'A2301085100002018100001', 'A2301062020012018100099', 'A2301830517002018090003', 'A2301290501002019040001', 'A2301240500002018080001', 'A2301260200002018090006', 'A2301821414022018011647', 'A2301000514012018090001', 'A2301245100002018050014', 'A2301004908002018110004', 'A2301295500002018110005', 'A2301270300002018090005', 'A2301848900002018070017', 'A2301210504002018080011', 'A2301004902002018110002', 'A2301810500002018110038', 'A2301025103002018120002', 'A2301290500002019020003', 'A2301096000002018060043', 'A2301260200002018060002', 'A2301810500002018090002', 'A2301815100002018060014', 'A2301820506002018070006', 'A2301037200002018100154', 'A2301849000002018090001', 'A2301280200002018110002']
----------------------------
['A2301260500002019030006', 'A2301260500002019030007', 'A2301260500002019020002']
['A2301095200002018060039', 'A2301096000002018050002', 'A2301096000002018060009', 'A2301095200002018070016', 'A2301096000002018040010']
['A2301246400002018050003', 'A2301245200002018060007', 'A2301236400002018060005', 'A2301245200002018060003', 'A2301246400002018060002', 'A2301246400002018060001']
['A2301270500002018040003', 'A2301270500002018040004', 'A2301270500002018040005']
['A2301080506002018120002', 'A2301080506002018120001', 'A2301080506002018120011', 'A2301080506002018120004', 'A2301080506002018120010', 'A2301080506002018120013', 'A2301080506002018120005', 'A2301085100002018100001', 'A2301080506002018120012', 'A2301080506002018120007', 'A2301080506002018120006', 'A2301080506002018120003', 'A2301080506002018120009']
['A2301060504002018110006', 'A2301060504002018110005', 'A2301060504002018110028', 'A2301060504002018110026', 'A2301060504002018110036', 'A2301060504002018110035', 'A2301060504002018110030', 'A2301060504002018110003', 'A2301061723042018103961', 'A2301060504002018110024', 'A2301060504002018110004', 'A2301060504002018110025', 'A2301060504002018110044', 'A2301063010412018100861', 'A2301060504002018110022', 'A2301060504002018110031', 'A2301060504002018110038', 'A2301060504002018110007', 'A2301060504002018110032', 'A2301060504002018110009', 'A2301060504002018110039', 'A2301063011482018102790', 'A2301060504002018110029', 'A2301060504002018110021', 'A2301060504002018100001', 'A2301060504002018110015', 'A2301060504002018110043', 'A2301062020012018100099', 'A2301060504002018110011', 'A2301060504002018110040', 'A2301060504002018110023', 'A2301060504002018110027', 'A2301060504002018110037', 'A2301060504002018110014', 'A2301060504002018110033', 'A2301060504002018110002', 'A2301060504002018110041', 'A2301060504002018110008', 'A2301060504002018110001', 'A2301060504002018110010', 'A2301060504002018100002', 'A2301060504002018110019', 'A2301060504002018120004', 'A2301060504002018110018', 'A2301060504002018110020', 'A2301060504002018110034']
['A2301830517002018090003', 'A2301830517002018090005', 'A2301830517002018090006', 'A2301830517002018090004']
['A2301290501002019040001', 'A2301290501002019040002', 'A2301290501002019030002', 'A2301290501002019040004']
['A2301240500002018080001', 'A2301240500002018080004', 'A2301240500002018080003', 'A2301240500002018080002']
['A2301260200002018100006', 'A2301260200002018090002', 'A2301260200002018100013', 'A2301260200002018100008', 'A2301260200002018090006', 'A2301260200002018100003', 'A2301260200002018100001', 'A2301260200002018100010', 'A2301260200002018100005', 'A2301260200002018100012', 'A2301260200002018100002', 'A2301260200002018090004', 'A2301260200002018100011', 'A2301260200002018090003', 'A2301260200002018100014', 'A2301260200002018090005', 'A2301260200002018100007']
['A2323037100002018120006', 'A2301827600002018090005', 'A2301821414022018011647', 'A2301820209332018024067']
['A2301000514012018090001', 'A2301230500002018060001', 'A2301000514012018110004', 'A2301230300002018110005', 'A2301230500002018050005', 'A2301000514012019010001', 'A2301000514012018090002', 'A2301000514012018100001']
['A2301245100002018050014', 'A2301245100002018070018', 'A2301286100002018050005', 'A2301286100002018060002']
['A2303016200002018100001', 'A2301004908002018110004', 'A2301004908002018110006']
['A2301295500002018110008', 'A2301295500002018110006', 'A2301295500002018110003', 'A2301295500002018110007', 'A2301295500002018110005', 'A2301002104002018100007']
['A2301270300002018100004', 'A2301270300002018100002', 'A2301270300002018100001', 'A2301270300002018090005']
['A2301848900002018070017', 'A2301845700002018070027', 'A2301840502002018070002', 'A2301848800002018070024', 'A2301840502002018070003', 'A2301840502002018070001']
['A2301210504002018120003', 'A2301210504002018120019', 'A2301210504002018120013', 'A2301210504002018080007', 'A2301210504002018080021', 'A2301210504002018080015', 'A2301210504002018120017', 'A2301210504002018120045', 'A2301210504002018080014', 'A2301210504002018120049', 'A2301210504002018080019', 'A2301210504002018120028', 'A2301210504002018080004', 'A2301210504002018120029', 'A2301210504002018120051', 'A2301210504002018110005', 'A2301210504002018120023', 'A2301210504002018120043', 'A2301210504002018120044', 'A2301210504002018120041', 'A2301210504002018120014', 'A2301210504002018120032', 'A2301210504002018080003', 'A2301210504002018110006', 'A2301210504002018080009', 'A2301210504002018110004', 'A2301210504002018110003', 'A2301210504002018120038', 'A2301210504002018120039', 'A2301210504002018120015', 'A2301210504002018120011', 'A2301210504002018120036', 'A2301210504002018080010', 'A2301210504002018120048', 'A2301210504002018120025', 'A2301210504002018120006', 'A2301210504002018120012', 'A2301210504002018080013', 'A2301210504002018120022', 'A2301210504002018080017', 'A2301210504002018120008', 'A2301210504002018120046', 'A2301210504002018120052', 'A2301210504002018110007', 'A2301210504002018120024', 'A2301210504002018080022', 'A2301210504002018080005', 'A2301210504002018120050', 'A2301210504002018080002', 'A2301210504002018120009', 'A2301210504002018120031', 'A2301210504002018120033', 'A2301210504002018120042', 'A2301210504002018120035', 'A2301210504002018120040', 'A2301210504002018120026', 'A2301210504002018120005', 'A2301210504002018120030', 'A2301210504002018120027', 'A2301210504002018120018', 'A2301210504002018120010', 'A2301210504002018120016', 'A2301210504002018120002', 'A2301210504002018120001', 'A2301210504002018120034', 'A2301210504002018120007', 'A2301210504002018120037', 'A2301210504002018120004', 'A2301210504002018080008', 'A2301210504002018080011', 'A2301210504002018080018', 'A2301210504002018120021', 'A2301210504002018080020', 'A2301210504002018120047', 'A2301210504002018080006', 'A2301210504002018120020', 'A2301210504002018080016']
['A2301004906002019010005', 'A2301004902002018120001', 'A2301004902002018100006', 'A2301004908002018110002', 'A2301004902002018110002', 'A2301004906002019010003', 'A2301004904002019010003', 'A2301004908002019010002', 'A2301004902002018110003', 'A2301004908002019010004', 'A2301004908002018110001', 'A2301004905002019010008', 'A2301004904002018100004', 'A2301004908002019010005', 'A2301004904002019010004', 'A2301004909002019010001', 'A2301004905002019010007', 'A2301004908002019010003', 'A2301004904002019010002', 'A2301004908002018100002', 'A2301004902002018110001', 'A2301004906002019010004']
['A2301810500002018120044', 'A2301810500002018110039', 'A2301810500002018110041', 'A2301810500002018120034', 'A2301810500002018120055', 'A2301810500002018120052', 'A2301810500002018120053', 'A2301810500002018120032', 'A2301810500002018110038', 'A2301810500002018120054', 'A2301810500002018120035', 'A2301810500002018110040', 'A2301810500002018120033', 'A2301810500002018120056']
['A2301025103002019010002', 'A2301025103002018120002', 'A2301025103002018120004', 'A2301025103002018120005', 'A2301025103002019010001']
['A2301290500002019020004', 'A2301293014052013074923', 'A2301292809352016111088', 'A2301290500002019020003', 'A2301290500002019030001']
['A2301090506002018090006', 'A2301096000002018060044', 'A2301090506002018090002', 'A2301090506002018090004', 'A2301096000002018060045', 'A2301090506002018090005', 'A2301090506002018090003', 'A2301096000002018060043']
['A2301260200002018070019', 'A2301260200002018060002', 'A2301260200002018070001']
['A2301810500002018100008', 'A2301810500002018090002', 'A2301810500002018070015', 'A2301810500002018100006']
['A2301815100002018060014', 'A2301847300002018070003', 'A2301837900002018060010', 'A2301847300002018070002', 'A2301835600002018060007', 'A2301815500002018050010', 'A2301817900002018060001']
['A2301820502002018120006', 'A2301820502002019020003', 'A2301820502002018110004', 'A2301820502002018120003', 'A2301820502002018120014', 'A2301820502002018120001', 'A2301820502002018120002', 'A2301820502002018110005', 'A2301820502002018110007', 'A2301820502002018110010', 'A2301820502002018110002', 'A2301820506002018070006', 'A2301820502002018120004', 'A2301820502002018120009', 'A2301820502002018110012', 'A2301820502002018110014', 'A2301820502002018110013', 'A2301820502002018110011', 'A2301820502002019020002', 'A2301820502002018120005', 'A2301820502002018110006', 'A2301820502002019010001', 'A2301820502002018120013', 'A2301820502002019020001', 'A2301820502002018110009', 'A2301820502002018110008', 'A2301820502002018120011', 'A2301820502002018120010', 'A2301820502002018110001', 'A2301820502002018110003']
['A2301025600002018120006', 'A2301031714062013011545', 'A2301037200002018100154', 'A2301025700002018120027', 'A2301032513122013013630', 'A2301025700002018120050', 'A2301025600002018120051', 'A2301032816032012120005', 'A2301030916252013014087', 'A2301026600002018120008', 'A2301025600002018120044']
['A2323015500002018100003', 'A2301849000002018090018', 'A2323015700002018100005', 'A2301848700002018090013', 'A2323015500002018100004', 'A2301849000002018090001', 'A2301265300002018090007', 'A2301845700002018090004', 'A2301265500002018090005', 'A2301845700002018090019', 'A2323015700002018100004', 'A2301265300002018090006', 'A2323016100002018100003', 'A2301849000002018090008', 'A2301265300002018090011', 'A2301265300002018090005', 'A2301849000002018090019', 'A2301265500002018090006', 'A2301265300002018090010', 'A2301265300002018090009', 'A2301265300002018090008', 'A2301848700002018090006']
['A2301280200002018110003', 'A2301280200002018110011', 'A2301280200002018110013', 'A2301280200002018110005', 'A2301280200002018110010', 'A2301280200002018110007', 'A2301280200002018110012', 'A2301280200002018110002', 'A2301280200002018110008', 'A2301280200002018110009', 'A2301280200002018110014', 'A2301280200002018110006']

以上这篇python 实现查询Neo4j多节点的多层关系就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python显示进度条的方法
Sep 20 Python
Python实现的求解最大公约数算法示例
May 03 Python
在python中pandas读文件,有中文字符的方法
Dec 12 Python
python字符串循环左移
Mar 08 Python
Python中PyQt5/PySide2的按钮控件使用实例
Aug 17 Python
详解numpy矩阵的创建与数据类型
Oct 18 Python
python实现自动化报表功能(Oracle/plsql/Excel/多线程)
Dec 02 Python
python爬虫添加请求头代码实例
Dec 28 Python
Python异步编程之协程任务的调度操作实例分析
Feb 01 Python
pyinstaller打包单文件时--uac-admin选项不起作用怎么办
Apr 15 Python
Python 如何操作 SQLite 数据库
Aug 17 Python
Python lxml库的简单介绍及基本使用讲解
Dec 22 Python
python 多进程队列数据处理详解
Dec 23 #Python
python3实现从kafka获取数据,并解析为json格式,写入到mysql中
Dec 23 #Python
python读取ini配置文件过程示范
Dec 23 #Python
python读取Kafka实例
Dec 23 #Python
Python3 使用selenium插件爬取苏宁商家联系电话
Dec 23 #Python
kafka监控获取指定topic的消息总量示例
Dec 23 #Python
kafka-python 获取topic lag值方式
Dec 23 #Python
You might like
一个简单的PHP投票程序源码
2007/03/11 PHP
php session 预定义数组
2009/03/16 PHP
php错误日志简单配置方法
2016/07/11 PHP
PHP 的Opcache加速的使用方法
2017/12/29 PHP
百度移动版的url编码解码示例
2014/04/29 Javascript
js判断当前页面在移动设备还是在PC端中打开
2016/01/06 Javascript
sso跨域写cookie的一段js脚本(推荐)
2016/05/25 Javascript
AngularJs篇:使用AngularJs打造一个简易权限系统的实现代码
2016/12/26 Javascript
JS实现数组按升序及降序排列的方法
2017/04/26 Javascript
基于BootStrap multiselect.js实现的下拉框联动效果
2017/07/28 Javascript
浅谈react+es6+webpack的基础配置
2017/08/09 Javascript
Angular4编程之表单响应功能示例
2017/12/13 Javascript
vue 引入公共css文件的简单方法(推荐)
2018/01/20 Javascript
JSX在render函数中的应用详解
2019/09/04 Javascript
JS控制下拉列表左右选择实例代码
2020/05/08 Javascript
使用Vue-cli 中为单独页面设置背景图片铺满全屏
2020/07/17 Javascript
OpenLayers3实现对地图的基本操作
2020/09/28 Javascript
Python while、for、生成器、列表推导等语句的执行效率测试
2015/06/03 Python
Python Django使用forms来实现评论功能
2016/08/17 Python
python3+opencv3识别图片中的物体并截取的方法
2018/12/05 Python
Python 虚拟空间的使用代码详解
2019/06/10 Python
python matplotlib库绘制条形图练习题
2019/08/10 Python
python处理RSTP视频流过程解析
2020/01/11 Python
基于Tensorflow使用CPU而不用GPU问题的解决
2020/02/07 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
2020/04/10 Python
html5记忆翻牌游戏实现思路及代码
2013/07/25 HTML / CSS
英国老牌潮鞋店:Offspring
2019/08/19 全球购物
关于递归的一道.NET面试题
2013/05/12 面试题
高一历史教学反思
2014/01/13 职场文书
财务工作者先进事迹材料
2014/01/17 职场文书
优良学风班总结材料
2014/02/08 职场文书
设立有限责任公司出资协议书
2014/11/01 职场文书
讲座新闻稿
2015/07/18 职场文书
活动简报范文
2015/07/22 职场文书
七年级作文之英语老师
2019/10/28 职场文书
python中validators库的使用方法详解
2022/09/23 Python