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 进行排序。

相关推荐
嗯嗯**3 天前
Neo4j学习2:概念、数据展示、CQL使用
数据库·学习·neo4j·数据存储·图数据库·序列化·cql
嗯嗯**3 天前
Neo4j学习4:数据导入
学习·neo4j·图数据库·csv·数据导入
嗯嗯**3 天前
Neo4j学习3:Java连接图库并执行CQL
java·学习·spring·neo4j·图数据库·驱动·cql
嗯嗯**4 天前
Neo4j学习1:概述、安装
学习·neo4j·概述·安装·图数据库·jdk21
小陈phd5 天前
混合知识库搭建:本地Docker部署Neo4j图数据库与Milvus向量库
数据库·docker·neo4j
码云数智-大飞5 天前
基于语义内核(Semantic Kernel)与 Neo4j 构建轻量级知识问答系统
neo4j
执携8 天前
Neo4j的安装与配置
neo4j
matlabgoodboy10 天前
知识图谱neo4j项目构建代制做python可视化问答系统推荐实体抽取
python·知识图谱·neo4j
麦麦大数据10 天前
F076 中医中药知识智能问答与图谱构建研究系统 Vue+Flask+Neo4j
vue.js·flask·知识图谱·neo4j·智能问答·推荐算法·中医中药
攻城狮凌霄10 天前
PHP接单涨薪系列(七十一):如何用Neo4j构建借贷关系图谱?解析资金流水时空矩阵揪出“砍头息“和“循环贷“
矩阵·php·neo4j