知识图谱构建:图数据库Neo4j的节点和关系的新增、删除

目录

1、新增节点和节点属性,批量添加属性

2、节点显示信息修改

3、新增关系

4、同时新增两个节点与节点关系

5、删除节点

6、删除关系

7、同时删除节点和关系


1、新增节点和节点属性,批量添加属性


CREATE(n:节点名称 {属性1:'属性值', 属性2:'属性值',  ......} ) return n


其中,n只在此语句运行时代表创建的节点,当有多个节点做运算时可使用x,y,n,m等任何字符代替。此时的n用于return操作,当此语句运行结束,n在已经创建的节点中不存在,下一次使用时,n可代替任何节点或者关系。

注:当属性值是数字时,可不加单引号。

实例:


CREATE(n:Status {statusname:'maintain', statusto:'machine'} ) return n


2、节点显示信息修改

当创建好一批节点时,可以从属性中选择需要显示的属性值,也可调整节点的颜色和大小

 

 当选择另一个属性进行显示时

调整节点的颜色和大小

3、新增关系


MATCH  (x:Node {属性:'属性值'}) , (y:Node {属性:'属性值'})  create (x) - [r:关系名{关系属性:属性值}] -> (y)


注:当属性值是数字时,可不加单引号。

创建关系实例:


MATCH  ( x:Machine {machinename:'machine02'} ) , ( y:Status {statusname:'working'} )  create (x)  - [r:hasstatus{type:1}] -> (y)


 同样,关系也可以改变显示的名称、颜色、大小

 也可使用节点的id创建关系:


match (x:Machine),(y:Status) where id(x)=3 and id(y)=6  create (x) -[r:hassta{type:'has'}]->(y)


4、同时新增两个节点与节点关系


CREATE  (x:节点名 {属性:'属性名', 属性:'属性名',......} )  - [r:关系名{属性:'属性名'}] -> (y:节点名 {属性:'属性名', 属性:'属性名',......} )


实例:


CREATE (x:Machine {machinename:'machine05', machinetype:'device'} ) -[r:has{type:'has'}]->(y:Status {statusname:'bad', statusto:'machine'} )


5、删除节点

使用match语句查到相关节点,然后delete操作


match (x:节点名 {属性:'属性名'})  delete x


match语句查询节点有多种查询方式,可用属性值查询,也可用节点id查询:

删除所有节点: MATCH (n)  DETACH DELETE n

6、删除关系

关系删除和节点删除类似,首先match操作,然后delete操作

方式一:


match (x:Node {属性:'属性名'}) - [r:关系{属性:'属性名'}] -> ( y:节点 { 属性:'属性名' } )  delete r 


方式二:如果两个节点有多个同名同属性的关系,可使用id确定删除哪一个关系(一般不会相同的关系建立多次,但也不排除有此错误操作)


match (x:Node {属性:'属性名'}) - [r:关系] -> ( y:节点 { 属性:'属性名' } )  where id(r)=id号  delete r 


实例:

match ( x:Machine {machinename:'machine02'} ) - [r:hasstatus] -> ( y:Status  {statusname : 'working' } )  where id(r)=0  delete r

 

 

7、同时删除节点和关系

 语句结构:


match ...... delete x , r , y


match语句操作同上


match(x:Machine {machinename:'machine02'})-[r:hasstatus]->(y:Status{statusname:'working'})     delete  x , r , y 


暂时就写到节点和关系的新增和删减

未完待续。。。。。。

——————————————————————

希望此博客能对您有所帮助,如果仍有问题,欢迎留言讨论!!

  • 10
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
neo4j是一个基于数据库的开源软件,用于存储和处理大规模结构数据。 安装neo4j非常简单,只需要下载适合您操作系统的安装包,并按照安装向导进行操作即可。安装完成后,您可以通过访问http://localhost:7474来打开neo4j的浏览器界面,并进行数据库的操作。 药材供应谱是一个基于neo4j构建的示例谱。该谱用于存储和展示药材的供应链关系。假设我们有一些药材,每个药材有其自身的属性,如名称、功效等。同时,每个药材之间存在供应关系,即某些药材可以作为其他药材的原材料。 在neo4j中,我们可以为每个药材创建一个节点,并为其添加属性。例如,在谱中,我们可以创建一个名为“当归”的节点,它的属性可以包括名称为“当归”以及功效为“活血调经”的参数。 除了节点之外,我们还可以创建关系来表示不同药材之间的供应链关系。例如,我们可以创建一个关系“供应”,连接“当归”和“川芎”,表示“川芎”是“当归”的供应商。 通过使用数据库,我们可以轻松地查询和探索药材的供应链关系。例如,我们可以查找所有供应某个特定药材的供应商,或者查找某个药材的全部供应物。 总而言之,neo4j是一个功能强大的数据库,可以用于构建知识谱。药材供应谱是其中的一个示例,它可以帮助我们更好地理解和管理药材的供应链关系

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值