当前位置:   article > 正文

Neo4j中创建关系的常用操作_neo4j创建关系

neo4j创建关系

关系基础

Neo4j图数据库遵循属性图模型来存储和管理其数据。

根据属性图模型,关系应该是定向的。

因此,基于方向性,Neo4j关系被分为两种类型:

  • 单向关系
  • 双向关系

在使用Neo4j CQL CREATE命令来创建两个节点时主要分为一下几种场景(适用于Uni和双向关系):

  • 在两个现有节点之间创建无属性的关系
  • 在两个现有节点之间创建有属性的关系
  • 在两个新节点之间创建无属性的关系
  • 在两个新节点之间创建有属性的关系
  • 在具有WHERE子句的两个退出节点之间创建/不使用属性的关系

创建关系的CQL命令

  • 创建关系

    • 在两个现有节点之间创建无属性的关系

      MATCH (<node1-name>:<nodel-label-name>),(<node2-name>:<node2-label-name>)
      CREATE (<node1-name>)-[<relationship-name>:<relationship-label-name>{<define-properties-list>}]->(<node2-name>)
      RETURN <relationship-name>
      
      • 1
      • 2
      • 3
      • <node1-name>:用于创建关系的“From Node”的名称。
      • <node1-label-name>:用于创建关系的“From Node”的标签名称。
      • <node2-name>:用于创建关系的“To Node”的名称。
      • <node2-label-name>:用于创建关系的“To Node”的标签名称。
      • <relationship-name>:关系的名称。
      • <relationship-label-name>:关系的标签名称。
      • 注:在该语法中,RETURN子句是可选的。如果要立即看到结果,就使用它,否则可以省略。
    • 在两个现有节点之间创建有属性的关系

      MATCH (<node1-name>:<nodel-label-name>),(<node2-name>:<node2-label-name>)
      CREATE (<node1-name>)-[<relationship-name>:<relationship-label-name>{<define-properties-list>}]->(<node2-name>)
      RETURN <relationship-name>
      
      • 1
      • 2
      • 3
      • <define-properties-list>:分配给新创建关系的属性(名称 - 值对)的列表。

      • define-properties-list表示如下:

        { 
           <property1-name>:<property1-value>,
           <property2-name>:<property2-value>,
           ...
           <propertyn-name>:<propertyn-value>
        }
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • <propertyx-name>:分配给新创建关系的属性的名称。 其中x是1,2,… n个值
        • <propertyx-value>:分配给新创建关系的Property的值。 其中x是1,2,… n个值
        • 注:使用Colon(:)运算符来分隔属性名称和值,使用Comma(,)运算符将一对Property(名称值)与另一对Property分离。
    • 在两个新节点之间创建无属性的关系

      CREATE  
         (<node1-name>:<node1-label-name>)-
         [<relationship-name>:<relationship-label-name>]->
         (<node2-name>:<node2-label-name>)
      RETURN <relationship-name>
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • <node1-name>:用于创建关系的“From Node”的名称。
      • <node1-label-name>:用于创建关系的“From Node”的标签名称。
      • <node2-name>:用于创建关系的“To Node”的名称。
      • <node2-label-name>:用于创建关系的“To Node”的标签名称。
      • <relationship-name>:关系的名称。
      • <relationship-label-name>:关系的标签名称。
    • 在两个新节点之间创建有属性的关系

      CREATE  
         (<node1-name>:<node1-label-name>{<define-properties-list>})-
         [<relationship-name>:<relationship-label-name>{<define-properties-list>}]->
         (<node2-name>:<node2-label-name>{<define-properties-list>})
      RETURN <relationship-name>
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • define-properties-list表示如下:

        { 
        	<property1-name>:<property1-value>,
        	<property2-name>:<property2-value>,
        	...
        	<propertyn-name>:<propertyn-value>
        }
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
    • 检索关系节点的详细信息

      MATCH 
      (<node1-label-name>)-[<relationship-name>:<relationship-label-name>]->(<node2-label-name>)
      RETURN <relationship-name>
      
      • 1
      • 2
      • 3
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号