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

相关推荐
亦暖筑序5 天前
GraphRAG vs 传统向量RAG:Spring AI实战对比
知识图谱·neo4j·向量数据库·rag·spring ai·graphrag
i建模6 天前
Milvus 和neo4j对比
neo4j·milvus
哥本哈士奇(aspnetx)7 天前
看完《低智商犯罪》,学习Cypher构建知识图谱
neo4j
子榆.10 天前
CANN TensorFlow适配器:当tf.matmul跑在昇腾NPU上时在底层发生了什么
人工智能·neo4j·llama
lzp079111 天前
基于多模态视觉模型和图文向量模型的工业图像知识库研究与应用(伍)
数据库·学习·neo4j
子榆.12 天前
CANN ATC编译器:模型从Python到达芬奇指令走了多远
开发语言·python·neo4j
程序员清洒12 天前
一个Token的昇腾之旅——从模型输入到硬件执行的完整链路
neo4j·cann
林夕0715 天前
Qt集成AI推理引擎:TensorFlow Lite与ONNX Runtime实战
人工智能·qt·neo4j
格鸰爱童话17 天前
springboot3.2使用neo4j
springboot·neo4j
Yeats_Liao20 天前
智能感知低功耗设计:MCU上的AI异常检测与能效优化
人工智能·单片机·物联网·neo4j