• 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))
    
    
    
    
    
  • 相关阅读:
    十七、Java基础之final
    十六、Java基础之super
    十五、Java基础之多态
    十四、Java基础之方法重写/覆盖
    十三、Java基础之单例模式
    十二、Java基础之继承
    十一、Java基础之static关键字
    十、Java基础之this介绍
    九、Java基础之参数传递(值传递)
    利用ResultFilter实现asp.net mvc3 页面静态化
  • 原文地址:https://www.cnblogs.com/yangzilaing/p/16034284.html
Copyright © 2020-2023  润新知