Neo4j之where基础

WHERE在MATCH或者OPTINALMATCH语句中添加约束,或者与WITH起使用来过滤结果。 WHERE不能单独使用, 它只能作为MATCH、 OPTINAL MATCH、 START和WITH的 一部分。 如果是在WITH和START中, 它用于过滤结果。 对于MATCH和OPTTNAL MATCH, WHERE为模式增加约束, 它不能看作是匹配完成后的结果过滤。


基本比较:

sql 复制代码
MATCH (person:Person)
WHERE person.age > 25
RETURN person.name;

这个查询会匹配年龄大于 25 岁的所有人,并返回他们的姓名。

多个条件:

sql 复制代码
MATCH (movie:Movie)
WHERE movie.released >= 2000 AND movie.released <= 2010
RETURN movie.title;

这个查询会返回在 2000 年到 2010 年之间发布的电影的标题。

字符串匹配:

sql 复制代码
MATCH (person:Person)
WHERE person.name CONTAINS 'John'
RETURN person.name;

这个查询会返回姓名中包含 "John" 的所有人。

模式匹配:

sql 复制代码
MATCH (actor:Person)-[:ACTED_IN]->(movie:Movie)
WHERE actor.name = 'Tom Hanks' AND movie.released > 2000
RETURN actor.name, movie.title;

这个查询会返回 Tom Hanks 在 2000 年之后参演过的电影。

使用正则表达式:

sql 复制代码
MATCH (person:Person)
WHERE person.name =~ '(?i).*smith.*'
RETURN person.name;

这个查询会返回姓名中包含 "smith"(不区分大小写)的所有人。

筛选属性是否存在:

sql 复制代码
MATCH (person:Person)
WHERE exists(person.age)
RETURN person.name;

这个查询会返回那些有年龄属性的人的姓名。

对属性值进行 NULL 判断:

sql 复制代码
MATCH (person:Person)
WHERE person.age IS NULL
RETURN person.name;

这个查询会返回年龄属性为空的人的姓名。

相关推荐
羊羊小栈1 天前
基于GraphRAG的地质矿产知识管理系统(Neo4j_大语言模型)
人工智能·语言模型·自然语言处理·毕业设计·neo4j·大作业
夜郎king2 天前
SpringBoot 整合 Neo4j 实战:从零搭建经典小说知识图谱完整方案
spring boot·知识图谱·neo4j
羊羊小栈3 天前
基于知识图谱(Neo4j)和大语言模型(LLM)的图检索增强(GraphRAG)的数控车床主轴系统故障诊断智能问答系统
人工智能·语言模型·毕业设计·知识图谱·创业创新·neo4j·大作业
_Rookie._4 天前
neo4j图形数据库 -基础语法
neo4j
星川皆无恙4 天前
基于BERT+LSTM+CRF与知识图谱的医疗智能问答系统实战:Neo4j图数据库+实体识别+意图分析完整项目
数据库·人工智能·深度学习·bert·lstm·知识图谱·neo4j
飞行家贞贞6 天前
Windows 安装 Neo4j(2025最新·极简)
neo4j
ins_lizhiming7 天前
多模态+neo4j+langchain构建知识图谱问答
langchain·知识图谱·neo4j
qq_356408668 天前
Neo4j RPM 安装与多实例配置说明
neo4j
codefan※9 天前
干掉幻觉实战:如何构建企业级知识图谱增强 RAG
人工智能·大模型·llm·知识图谱·neo4j·rag·graphrag
亦暖筑序15 天前
GraphRAG vs 传统向量RAG:Spring AI实战对比
知识图谱·neo4j·向量数据库·rag·spring ai·graphrag