Neo4j CQL 核心命令与操作

一、MATCH 查询

cypher

复制代码
MATCH (n:`西游`) RETURN n LIMIT 25
  • 用于从数据库获取节点、关系和属性的数据

  • 支持条件过滤、排序、分页等


二、RETURN 返回

cypher

复制代码
MATCH (n:`西游`) RETURN id(n), n.name, n.tail, n.relation
  • 可返回节点的某些属性或所有属性

  • 可返回节点和关联关系的某些属性或所有属性


三、WHERE 子句

cypher

复制代码
MATCH (n:person) 
WHERE n.name = '孙悟空' OR n.name = '猪八戒' 
RETURN n
  • 用于过滤 MATCH 查询结果

  • 支持逻辑运算、比较运算、IN 操作等


四、CREATE 关系

cypher

复制代码
MATCH (n:person), (m:person) 
WHERE n.name = '孙悟空' AND m.name = '猪八戒' 
CREATE (n)-[r:师弟]->(m) 
RETURN n.name, type(r), m.name

五、DELETE 删除

删除节点(无关系时)

cypher

复制代码
MATCH (n:person {name:"白龙马"}) 
DELETE n

删除关系

cypher

复制代码
MATCH (n:person {name:"沙僧"})<-[r]-(m) 
DELETE r 
RETURN type(r)

六、REMOVE 删除属性/标签

删除属性

cypher

复制代码
MATCH (n:role {name:"fox"}) 
REMOVE n.age 
RETURN n

删除标签

cypher

复制代码
MATCH (m:role:person {name:"fox666"}) 
REMOVE m:person 
RETURN m

七、SET 添加/更新属性

cypher

复制代码
MATCH (n:role {name:"fox"}) 
SET n.age = 32 
RETURN n

八、ORDER BY 排序

cypher

复制代码
MATCH (n:`西游`) 
RETURN id(n), n.name 
ORDER BY id(n) DESC
  • 默认升序(ASC),可指定 DESC

九、UNION / UNION ALL

cypher

复制代码
MATCH (n:role) RETURN n.name AS name
UNION
MATCH (m:person) RETURN m.name AS name
  • UNION:去重合并

  • UNION ALL:合并所有行(含重复)

要求:结果列名和类型必须匹配


十、LIMIT / SKIP

cypher

复制代码
MATCH (n:`西游`) RETURN n LIMIT 2      -- 前两行
MATCH (n:person) RETURN n SKIP 2      -- 忽略前两行

十一、NULL 值处理

cypher

复制代码
MATCH (n:`西游`) 
WHERE n.label IS NULL 
RETURN id(n), n.name, n.tail, n.label

十二、IN 操作符

cypher

复制代码
MATCH (n:`西游`) 
WHERE n.name IN ['孙悟空', '唐僧'] 
RETURN id(n), n.name, n.tail, n.label

十三、索引(INDEX)

创建索引

cypher

复制代码
CREATE INDEX ON :`西游` (name)

删除索引

cypher

复制代码
DROP INDEX ON :`西游` (name)

十四、UNIQUE 约束

创建唯一约束

cypher

复制代码
CREATE CONSTRAINT ON (n:xiyou) ASSERT n.name IS UNIQUE

删除唯一约束

cypher

复制代码
DROP CONSTRAINT ON (n:xiyou) ASSERT n.name IS UNIQUE

十五、DISTINCT

cypher

复制代码
MATCH (n:`西游`) 
RETURN DISTINCT(n.name)

十六、常用函数

字符串函数

函数 说明
UPPER 转大写
LOWER 转小写
SUBSTRING 取子串
REPLACE 替换子串

聚合函数

函数 说明
COUNT 行数
MAX 最大值
MIN 最小值
SUM 求和
AVG 平均值

关系函数

函数 说明
STARTNODE 关系的开始节点
ENDNODE 关系的结束节点
ID 关系的 ID
TYPE 关系的类型(字符串)

十七、数据库备份与恢复(neo4j-admin)

操作前需关闭 Neo4j 服务

备份

复制代码
neo4j stop
neo4j-admin dump --database=graph.db --to=/neo4j/backup/graph_backup.dump

恢复

复制代码
neo4j-admin load --from=/neo4j/backup/graph_backup.dump --database=graph.db --force
neo4j start
相关推荐
ClickHouseDB4 小时前
ClickHouse Cloud 与 Snowflake 实时性价比对比:CostBench 测试中的 412 倍差距来
运维·数据库·系统架构
m0_639906944 小时前
Redis入门|五种数据结构、使用场景、持久化RDB&AOF
数据结构·数据库·redis
时间售卖铺5 小时前
触发器与函数实战:MySQL高效编程秘诀
运维·数据库·mysql·云原生
qetfw5 小时前
UOS MariaDB 数据库:安装、最小权限与备份验证
linux·数据库·mariadb·uos
数智园区合作社6 小时前
问数平台怎么把同一个指标锁成一个数
大数据·数据库·人工智能·ai
lbb 小魔仙6 小时前
Windows搭建PaddleOCR+飞书Webhook自动打卡通知机器人:识别、推送与远程触发完整教程
数据库·人工智能·prometheus·时序数据库
captain3767 小时前
MyBatis操作数据库(入门2)
java·数据库·spring boot·后端·spring·mybatis
心中有你02148 小时前
Java实现Dijkstra最短路径算法(邻接表 + 优先队列)
java·数据库·算法
龙亘川8 小时前
综合素质评价业务建模:从过程性评价到成长档案全链路闭环
数据库·智慧城市·数据可视化
数据库小组8 小时前
NineData 实战教程:MySQL 5.5 数据迁移同步到 MySQL 8.0(跨版本升级)
数据库·mysql·mysql优化·数据库开发·数据库迁移·版本升级·数据复制