Neo4j常用的查询

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

一、添加操作

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()

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


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

查看所有标签

猜你喜欢:

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

The Web Application Hacker's Handbook

The Web Application Hacker's Handbook

Dafydd Stuttard、Marcus Pinto / Wiley / 2011-9-27 / USD 50.00

The highly successful security book returns with a new edition, completely updated Web applications are the front door to most organizations, exposing them to attacks that may disclose personal infor......一起来看看 《The Web Application Hacker's Handbook》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具