Neo4j常用的查询

栏目: 数据库 · 发布时间: 4年前

一、添加操作

1. 添加节点:

create (x:学生{studentId:'1001',age:20}

2. 添加关系:

对现有的节点添加关系

match (x:学生{studentId:1001}),(y:教师{tid:'09'}) create (x)-[jx:课程{name:'高数'}]->(y)

添加节点并添加关系

create (x:学生{studentId:1001})-[jx:课程{name:'高数'}]->(y:教师{tid:'09'})

二、删除操作

1. 删除节点:

match (x:学生{studentId:1001}) delete x

2. 删除关系:

match (x:学生{studentId:1001})-[jx:课程{name:'高数'}]->(y:教师{tid:'09'})  delete jx

3. 删除关系的同时,删除数据:

match (x:学生{studentId:1001})-[jx:课程{name:'高数'}]->(y:教师{tid:'09'})  delete x,jx,y

三、修改节点

1. 给节点添加一个新的属性,两种方式:

match(x:学生{studentId:'1001'}) set x.age=21 return x

match(x:学生{studentId:'1001'}) set x+={age:21} return x

2. 给节点添加属性并删除现有属性

match(x:学生{studentId:'1001'}) set x={age:21,name:'abc'} //注意这里,会将studentId属性删除

3. 添加新标签:

match(x:学生{studentId:'1001'}) set x:男生 return x  //添加一个标签

match(x:学生{studentId:'1001'}) set x:男生:团员 return x  //添加多个标签

四、查询操作

1. 根据节点属性查找对应节点:

match(x:Student{studentId:'1001'}) return x

或者

match(x:Student) where x.studentId='1001' return x

2. 根据关系查找节点

match (x)-[r:教学内容]-(y) where r.课程='语文' return x,r,y

3. 查询单独的节点,即:与其他任何节点没有任何关系

match(x) where not (x)-[]-() return x

4. 查询N层关系的节点:

match q=(x)-[*5..8]-() return q limit 200 这个为查询5到8层关系的

match q=(dh)-[r]-(jq)-[rr]-()-[]-()-[]-()-[]-()-[]-()-[]-() return q limit 400

5. 查询节点关系数个数:

match(dh:`学生`)-[r]-(jq:`老师`) with dh, count(r) as dhs where dhs > 2 return dh

6. 查询节点个数:

match(x) return count(x)

7. 查询所有的关系类型:

CALL db.relationshipTypes()

8. 查询所有的节点标签:

CALL db.labels()

9. 查询节点关系种类:

CALL db.schema()

暂时先写这么多吧,想起来了再添加


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据结构

数据结构

邓俊辉 / 清华大学出版社 / 2013-9 / 39.00元

《清华大学计算机系列教材:数据结构(C++语言版)(第3版)》按照面向对象程序设计的思想,根据作者多年的教学积累,系统地介绍各类数据结构的功能、表示和实现,对比各类数据结构适用的应用环境;结合实际问题展示算法设计的一般性模式与方法、算法实现的主流技巧,以及算法效率的评判依据和分析方法;以高度概括的体例为线索贯穿全书,并通过对比和类比揭示数据结构与算法的内在联系,帮助读者形成整体性认识。一起来看看 《数据结构》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

SHA 加密
SHA 加密

SHA 加密工具