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
相关推荐
程序员萌萌37 分钟前
Redis的缓存机制和淘汰策略详解
数据库·redis·缓存机制·淘汰策略
不剪发的Tony老师1 小时前
SQLite 3.53.0版本发布,重要更新
数据库·sqlite
Bczheng11 小时前
九.Berkeley DB数据库 序列化和钱包管理(1)
数据库
cozil1 小时前
记录mysql创建数据库未指定字符集引发的问题及解决方法
数据库·mysql
架构师老Y1 小时前
013、数据库性能优化:索引、查询与连接池
数据库·python·oracle·性能优化·架构
AC赳赳老秦1 小时前
OpenClaw数据库高效操作指南:MySQL/PostgreSQL批量处理与数据迁移实战
大数据·数据库·mysql·elasticsearch·postgresql·deepseek·openclaw
一 乐1 小时前
校园线上招聘|基于springboot + vue校园线上招聘系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·校园线上招聘系统
liliangcsdn1 小时前
如何基于sentence_transformers构建向量计算工具
数据库·人工智能·全文检索
rchmin2 小时前
向量数据库Milvus安装及使用实战经验分享
数据库·milvus
ego.iblacat2 小时前
Python 连接 MySQL 数据库
数据库·python·mysql