Neo4j常用的查询
一、添加操作
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: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()
暂时先写这么多吧,想起来了再添加
上一篇: 13.Python略有小成(装饰器)
下一篇: ES6 解构