1. 数据查询与匹配类
语句 | 作用 |
---|---|
MATCH |
匹配已有的节点/关系 |
OPTIONAL MATCH |
类似 SQL 的 LEFT JOIN,匹配不到时返回 null |
WHERE |
条件过滤,可以配合 MATCH 、WITH 、OPTIONAL MATCH |
RETURN |
返回结果 |
UNION / UNION ALL |
合并多个结果集(去重/不去重) |
ORDER BY |
排序 |
SKIP / LIMIT |
分页控制 |
2. 数据创建与修改类
语句 | 作用 |
---|---|
CREATE |
创建节点或关系 |
MERGE |
匹配或创建(upsert 功能) |
SET |
设置或更新属性、标签 |
REMOVE |
删除属性或标签 |
DELETE |
删除节点或关系(节点需先删除关系) |
DETACH DELETE |
删除节点及其所有关系 |
FOREACH |
循环更新(只能在 WITH 后用) |
3. 聚合与计算类
语句 | 作用 |
---|---|
WITH |
管道传递结果,类似 SQL 的子查询中间结果 |
DISTINCT |
去重(配合 RETURN / WITH ) |
COUNT , SUM , AVG , MIN , MAX |
聚合函数 |
COLLECT |
把多行合并成列表 |
4. 模式控制与路径类
语句 | 作用 |
---|---|
SHORTESTPATH() / ALLSHORTESTPATHS() |
最短路径查询 |
[:REL*min..max] |
变量长度路径 |
ANY , ALL , NONE , SINGLE |
路径或列表的条件判断 |
5. 子查询与过程调用
语句 | 作用 |
---|---|
CALL { ... } |
内联子查询(Neo4j 4.0+) |
CALL procedureName(...) |
调用存储过程(如 APOC、内置过程) |
YIELD |
获取过程返回的列 |
CALL db.indexes / CALL db.constraints |
系统管理命令 |
CALL db.schema.visualization() |
图数据库结构可视化 |
6. 数据导入导出类
语句 | 作用 |
---|---|
LOAD CSV |
从 CSV 文件导入数据 |
USING PERIODIC COMMIT |
分批提交(导入大文件时优化内存) |
CALL apoc.export.csv.all(...) |
APOC 导出数据 |
CALL apoc.import.csv(...) |
APOC 导入数据 |
7. 索引与约束类
语句 | 作用 |
---|---|
CREATE INDEX |
创建索引(属性索引、全文索引等) |
DROP INDEX |
删除索引 |
CREATE CONSTRAINT |
创建约束(唯一性、存在性、节点键) |
DROP CONSTRAINT |
删除约束 |
8. 调试与性能分析
语句 | 作用 |
---|---|
PROFILE |
显示执行计划和实际执行数据 |
EXPLAIN |
只显示执行计划,不执行查询 |
USING INDEX |
强制使用某个索引 |
USING SCAN |
强制全表扫描(极少用) |