在Neo4j中我们的创建动作一般都是使用CREATE关键字,当然也可以使用MERGE关键字替代CREATE关键字。
创建的时候,我们主要是创建节点和创建关系。下面我们来演示一下。
1、创建节点
创建节点的话,我们主要分为两种,分别是创建空节点和创建带属性的节点。
1)创建空节点
空节点顾名思义就是节点没有带任何属性,示例如下:
create (a) return a
2)创建带有属性的节点
创建带有属性的节点的话,在create的时候我们把属性及属性值给带进去进行创建,示例如下:
create (n:Person{name:'张三',age:15}) return n
2、创建关系
创建关系主要是连接两个节点之间的关系,这里的关系是有指向的,下面我们都来演示一下。
1)创建有指向的关系
//创建两个节点 create (n:Person{name:'张三',age:15}) return n create (n:Family{name:'张三的家庭'}) return n //查找这两个节点,然后创建有指向的关系 match(a:Person),(b:Family) where a.name='张三' and b.name='张三的家庭' create (a)-[r:属于]->(b) return r; //然后我们查询他们的关系 match(a:Person),(b:Family) where a.name='张三' and b.name='张三的家庭' return *;
查询出来的结果是:
2)创建双向的关系
这里就是关系里面不带箭头的情况,下面我们演示一下
//创建一个李四的节点 create (n:Person{name:'李四',age:16}) return n //创建张三和李四的兄弟关系 match(a:Person),(b:Person) where a.name='张三' and b.name='李四' create (a)-[r:兄弟]-(b) return r; match(a:Person),(b:Person) where a.name='张三' and b.name='李四' create (b)-[r:兄弟]-(a) return r; //然后我们查询他们的关系 match(a:Person),(b:Person) where a.name='张三' and b.name='李四' return *;
最后我们还可以同时创建实体和关系,示例查询语句如下:
create (a:Person{name:'张三'})-[r:兄弟]->(b:Person{name:'李四'})
这是我们创建张三和李四节点,并且创建兄弟关系,效果图如下:
还没有评论,来说两句吧...