序
作为入门教程的第二章呢,本文将继续以节点和关系为中心介绍一些基础操作,包括where条件检索,set增添或更改属性值,remove永久删除属性或标签。
1. WHERE----条件检索
where就是起到限制条件的作用,比如说有几个节点名称和标签都相同,像这样
在检索的时候,如果不加限制就会全部显示,
match(队员:`嘉世战队`)
return 队员.姓名,队员.账号
但是呢,我们并不想检索所有的名称为队员的节点,举个栗子,我们只想得到姓名属性值为包荣兴这个节点的账号属性,而不想得到所有队员的账号属性,这个时候就要用到where。在用match获取节点数据的时候跟之前是一样的,就是在返回语句之前加一条语句作为限制条件,where+限制条件,如下所示,
match(队员:`嘉世战队`)
where 队员.姓名="包荣兴"
return 队员.账号
这样我们就可以只得到这一个指定节点的数据了。
2.SET----添加或更改属性值
用法比较简单,就是先用match获取节点或关系信息,然后用set直接进行添加或者是修改就可以。
为节点添加属性值
这个账号属性值为一寸灰的节点,我们可以看到目前是有2个属性
但是2个属性不够,还要为其添加职业这个属性,这个时候就要用到set,用法就是
match (队员:`嘉世战队`)
where 队员.账号="一寸灰"
set 队员.职业="阵诡"
return 队员//返回节点,查看结果
添加属性之后的效果就是这样的,
为节点更改属性值
为节点更改属性和为节点增添属性基本上是一样的,区别就是使用set的时候更改属性写的是节点名称.原属性=新属性值,而增添属性是节点名称.新属性=属性值。更改之前一寸灰这个节点如下,
然后我们用一下指令进行更改,
match(队员:`嘉世战队`)
where 队员.`账号`="一寸灰"
set 队员.`账号`="二寸灰"
return 队员
就是把账号的属性值改变,原来的账号是一寸灰,新的账号是二寸灰。更改之后的效果如下,
为关系增添或更改属性
对于关系属性的操作和节点的是一样的,都是先获取节点或者是关系的数据,然后用where进行条件筛选,再用set增添或更改属性值,最后返回查看结果(也可以不返回)。这里就不赘述了。
3.REMOVE----永久删除节点或关系的属性或标签
删除节点(关系)属性
之前我们讲到可以用set为节点增添或修改属性,那要是想删除属性,就要用到remove。remove和set用法非常类似,也是先获取节点数据,然后用where根据条件筛选,再用remove删除节点的属性,最后返回节点(不返回也可)。我们可以看到之前的二寸灰节点是这样的,
输入以下指令
match(队员:`嘉世战队`)
where 队员.`账号`="二寸灰"
remove 队员.职业
return 队员
运行之后可以看到节点的职业属性被删除了
删除关系属性的方法同删除节点属性,就不多说了。
删除节点(关系)标签
删除节点标签和删除节点属性同理,就是remove 节点名称:节点标签,而删除节点属性的时候是remove 节点名称.节点属性。比如说陈果这个节点,有3个标签分别是兴欣战队经理,女一,网咖老板,如下所示,
假设她的网咖转行了,那她就不是网咖老板了,我们就要删除网咖老板这个标签,输入如下指令,
match(陈果:`网咖老板`)
remove 陈果:网咖老板
return 陈果
运行之后的结果像这样,
运行之后我们可以看到在陈果这个节点之下,只有兴欣战队经理和女一2个标签了,还有左边的Node Labels中也没有了网咖老板这个标签。
删除关系标签的方法同删除节点标签,这里不多介绍了。
结语
本文介绍了关于节点和关系的条件检索,增添和更改属性,删除属性或标签三个基础操作,这样就能够更方便地使用neo4j啦。To be continue…