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;

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

相关推荐
小鸡吃米…8 天前
TensorFlow 实现异或(XOR)运算
人工智能·python·tensorflow·neo4j
坐吃山猪8 天前
Neo4j04_数据库事务
数据库·oracle·neo4j
小鸡吃米…8 天前
TensorFlow 实现梯度下降优化
人工智能·python·tensorflow·neo4j
KG_LLM图谱增强大模型8 天前
图谱驱动大模型智能体普惠时代:Neo4j Aura Agent正式全面上线
neo4j
坐吃山猪8 天前
Docker06-Neo4j启动
neo4j
小鸡吃米…10 天前
TensorFlow 分布式计算
neo4j
小鸡吃米…10 天前
TensorFlow 模型导出
python·tensorflow·neo4j
麦麦大数据13 天前
M003_中药可视化系统开发实践:知识图谱与AI智能问答的完美结合
人工智能·flask·llm·vue3·知识图谱·neo4j·ner
014-code16 天前
Spring Boot 集成 Neo4j 图数据库实战教程
java·数据库·neo4j
小鸡吃米…18 天前
TensorFlow——TFLearn 及其安装
python·tensorflow·neo4j