11

from py2neo import Node, Relationship, NodeSelector
from py2neo import Graph

"""
        MATCH ( { name: 'alice' })-[r:knows]->(m)-[r1:knows]->(mm)RETURN m.name;
        MATCH ( { name: 'alice' })-[r:knows]->(m) RETURN m;
        MATCH ( { name: 'bob' })<-[r:knows]-(m) RETURN m.name;
        MATCH (p) WHERE p.name = "jj" RETURN p.姓名
        
        # cypher_format0 = 'MATCH ({0}name:{1}{2})-[r1:{3}]->(e1)-[r2:{4}]->(e2) RETURN e1.{5} '
        # cypher_format1 = 'MATCH ({0}name:{1}{2})<-[r1:{3}]-(e) RETURN e.{4}'  # 反向关系 实体-关系-实体-属性-值
        # cypher_format2 = 'MATCH ({0}name:{1}{2})-[r1:{3}]->(e) RETURN e.{4}'  # 正向关系 实体-关系-实体-属性-值
        # cypher_format3 = 'MATCH (:xygzstp {0}name:{1}{2})<-[r1:{3}]-(e) RETURN e'  # 反向关系 实体-关系-实体
        # cypher_format4 = 'MATCH (:xygzstp {0}name:{1}{2})-[r1:{3}]->(e) RETURN e'  # 正向关系 实体-关系-实体
        # cypher_format5 = 'MATCH (e) WHERE e.{0} = {1} RETURN e.{2}'  # 反向关系 实体-属性-值
        # cypher_format6 = 'MATCH (e:xygzstp) WHERE e.name = {0} RETURN e.{1}'  # 正向关系 实体-属性-值
        # dic_cypher = {}
        # dic_cypher.setdefault('ze1', cypher_format4)
        # dic_cypher.setdefault('fe1', cypher_format3)
        # dic_cypher.setdefault('za1', cypher_format6)
        # cypher = cypher_format.format('{', '\'alice\'', '}', 'knows', 'knows', 'name')
        # print(list(neo4j.selectByCQL(cypher)))
"""


class Neo4j(object):
    def __init__(self):
        # self.graph = Graph("http://localhost:7474", username="neo4j", password="123456")
        self.graph = Graph("http://99.12.90.5:7474", username="neo4j", password="neo4j-zh")
        self.dic_cypher = {'fe1': 'MATCH (:xygzstp {0}name:{1}{2})<-[r1:{3}]-(e) RETURN e',
                           'ze1': 'MATCH (:xygzstp {0}name:{1}{2})-[r1:{3}]->(e) RETURN e',
                           'za1': 'MATCH (e:xygzstp) WHERE e.name = {0} RETURN e.{1}'
                           }

    def selectByCQL(self, cypher):
        return self.graph.run(cypher)

    def get_cypher(self, key):
        return self.dic_cypher.get(key)


neo4j = Neo4j()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值