Neo4j之union基础

UNION 用于将多个 MATCHRETURN 子句的结果合并为一个结果集。它可以用来合并不同模式的节点和关系,或者将多个查询的结果合并在一起。以下是一些常用的示例和解释:

基本用法

sql 复制代码
MATCH (p:Person)
WHERE p.age > 30
RETURN p.name AS name
UNION
MATCH (m:Movie)
WHERE m.year > 2000
RETURN m.title AS name

这个示例中,首先从满足条件的人节点中返回姓名,然后使用 UNION 将结果与满足条件的电影节点的标题合并起来。

多个查询合并

sql 复制代码
MATCH (p:Person)
RETURN p.name AS name
UNION
MATCH (m:Movie)
RETURN m.title AS name
UNION
RETURN 'Unknown' AS name

这个示例中,将三个查询的结果合并在一起,分别是人的姓名、电影的标题以及一个固定的字符串。

合并节点和关系

sql 复制代码
MATCH (p:Person)-[:ACTED_IN]->(m:Movie)
RETURN p.name AS name
UNION
MATCH (d:Director)-[:DIRECTED]->(m:Movie)
RETURN d.name AS name

这个示例中,将演员和导演的姓名合并在一起,他们分别与电影节点通过不同关系相连接。

使用 ORDER BY 排序

sql 复制代码
MATCH (p:Person)
RETURN p.name AS name
UNION
MATCH (m:Movie)
RETURN m.title AS name
ORDER BY name

这个示例中,先分别从人和电影节点中获取姓名和标题,然后使用 ORDER BY 对合并后的结果集进行排序。

总之,UNION 用于合并多个查询的结果,这些查询可以涉及不同类型的节点和关系,或者处理不同的属性。合并后的结果集会去除重复项,可以根据需要使用 ORDER BY 进行排序。

相关推荐
麦麦大数据1 天前
neo4j+django+deepseek知识图谱学习系统对接前后端分离前端vue
vue.js·django·知识图谱·neo4j·deepseek·在线学习系统
失眠的树亚4 天前
neo4j中导入csv格式的三元组数据
neo4j
阿梦Anmory6 天前
【neo4j数据导出并在其他电脑导入】
数据库·neo4j
シ風箏6 天前
Neo4j【环境部署 03】插件APOC和ALGO配置使用实例分享(网盘分享3.5.5兼容版本插件)
neo4j·图数据库·apoc·algo·图数据库插件
老马啸西风6 天前
Neo4j GDS-06-neo4j GDS 库中社区检测算法介绍
网络·算法·云原生·中间件·neo4j
Gratitute_林腾9 天前
neo4j-如何让外部设备访问wsl中的neo4j
neo4j
山外有山a10 天前
从 Neo4j 数据库中提取数据并绘制图谱
数据库·neo4j
2401_8979300611 天前
neo4j删除所有数据
数据库·neo4j
weixin_3077791313 天前
稳定运行的以Neo4j图数据库为数据源和目标的ETL性能变差时提高性能方法和步骤
数据库·性能优化·neo4j·etl
西瓜613 天前
Neo4j GDS(Graph Data Science)库安装(Mac版)
人工智能·macos·neo4j·新手入门·详细