neo4j中常用cql命令汇总(基础版)

@TOC

1.节点

1.1.添加节点

sql 复制代码
CREATE (n:user {id: "1898914289469677570", username: "张三", age: "22", phoneNumber: "13355536547"})

1.2.修改节点

sql 复制代码
MATCH (n:user {id: "1898914289469677570"}) SET n.username = "张三66", n.age = "66", n.phoneNumber = "13355536547", n.address = "***街道" RETURN n

2.关系

2.1.添加关系

  1. 根据已有节点的id属性来创建无属性关系
sql 复制代码
MATCH (a:user {id: "1897185063343259650"}), (b:school {id: "1897210602850418689"}) CREATE (a)-[r:study]->(b)
  1. 根据已有节点的id属性来创建有属性关系
sql 复制代码
MATCH (a:user {id: "1897185063343259650"}), (b:school {id: "1897210602850418689"}) CREATE (a)-[r:study{name:"学习",startDate:"2020-01-01",endDate:"2024-05-01"}]->(b)
  1. 使用新节点来创建有属性关系
sql 复制代码
CREATE (video1:YoutubeVideo1{title:"Action Movie1",updated_by:"Abc",uploaded_date:"10/10/2010"})
-[r:ACTION_MOVIES{rating:1}]->
(video2:YoutubeVideo2{title:"Action Movie2",updated_by:"Xyz",uploaded_date:"12/12/2012"}) 

2.2.修改关系

3.删除

3.1.删除节点的某个属性

删除学校中id为9的数据的address属性

sql 复制代码
MATCH (n:school) WHERE n.id = "9" REMOVE n.address RETURN n;

3.2.删除节点的所有关系

  • (n:school {id: "1"})-[r]-() 所有关系
  • (n:school {id: "1"})-[r]->() 节点指出去的关系
  • (n:school {id: "1"})<-[r]-() 指向节点的关系
sql 复制代码
MATCH (n:school {id: "1"})-[r]-() DELETE r;

3.3.删除节点的某个关系

sql 复制代码
MATCH (n:teacher {id: "1002"})-[r:teach]->() DELETE r;

3.4.删除节点以及关系

sql 复制代码
MATCH (n:school) WHERE n.id = "4" DETACH DELETE n;

4.查询

4.1.根据节点内部id查询节点

sql 复制代码
MATCH (n:school) WHERE id(n) = 22 RETURN n;

注:前面的cql查询,id都是指内部id;后面的cql中,id都是指自定义的id属性。

4.2.查询从a节点指出去的所有关系节点

sql 复制代码
MATCH (a:school {id: '7'})-[r]->(b) RETURN b;

4.3.查询指向a节点的所有关系节点

sql 复制代码
MATCH (a:student {id: '7'})<-[r]-(b) RETURN b;

4.4.查询与a节点存在关系、且距离为1的所有节点

sql 复制代码
MATCH (a:student {id: '7'})-[r]-(b) RETURN a, r, b;

4.5.查询与a节点存在关系、且距离小于等于3的所有节点

sql 复制代码
MATCH (a:student {id: '7'})-[r*1..3]-(b) RETURN a, r, b;
相关推荐
Chase_______8 分钟前
静态变量详解(static variable)
java·开发语言·jvm
厚衣服_311 分钟前
第15篇:数据库中间件高可用架构设计与容灾机制实现
java·数据库·中间件
勇闯IT26 分钟前
有多少小于当前数字的数字
java·数据结构·算法
小皮侠1 小时前
【算法篇】逐步理解动态规划模型6(回文串问题)
java·开发语言·算法·动态规划
勤奋的小王同学~1 小时前
(javaSE)抽象类和接口:抽象类概念语法和特性, 抽象类的作用;接口的概念 接口特性 实现多个接口 接口间的继承 Object类
java·开发语言
Ai财富密码1 小时前
【Linux教程】Linux 生存指南:掌握常用命令,避开致命误操作
java·服务器·前端
LUCIAZZZ2 小时前
项目拓展-Jol分析本地对象or缓存的内存占用
java·开发语言·jvm·数据库·缓存·springboot
GalaxyPokemon2 小时前
LeetCode - 69. x 的平方根
java·数据结构·算法
在未来等你2 小时前
设计模式精讲 Day 1:单例模式(Singleton Pattern)
java·设计模式·面向对象·软件架构
heart000_12 小时前
基于 WebWorker 的 WebAssembly 图像处理吞吐量分析
java·图像处理·wasm