Neo4j之MATCH基础

1】基本匹配和返回:查找所有节点和关系,返回节点的标签和属性。

sql 复制代码
MATCH (n)
RETURN n;

2】条件筛选:查找所有名为 "Alice" 的人物节点。

sql 复制代码
MATCH (person:Person {name: 'Alice'})
RETURN person;

3】关系查询:查找所有和 "Alice" 有关系的电影节点。

sql 复制代码
MATCH (:Person {name: 'Alice'})-[:ACTED_IN]->(movie:Movie)
RETURN movie;

4】多条件筛选:查找 1990 年之后发行的电影。

sql 复制代码
MATCH (movie:Movie)
WHERE movie.released > 1990
RETURN movie;

5】返回特定属性:查找 "Alice" 所参演的电影名称。

sql 复制代码
MATCH (:Person {name: 'Alice'})-[:ACTED_IN]->(movie:Movie)
RETURN movie.title;

6】返回多个节点属性:查找电影 "The Matrix" 的导演和演员的名字。

sql 复制代码
MATCH (movie:Movie {title: 'The Matrix'})<-[:DIRECTED|ACTED_IN]-(person)
RETURN person.name;

7】深度优先遍历:查找和 "Alice" 有关系的人物及其关系,最多深度为 2。

sql 复制代码
MATCH (alice:Person {name: 'Alice'})-[*1..2]-(related)
RETURN alice, related;

8】返回节点数量:统计电影节点的数量。

sql 复制代码
MATCH (movie:Movie)
RETURN count(movie);

9】组合查询:查找 "Alice" 和 "Bob" 共同参演的电影。

sql 复制代码
MATCH (alice:Person {name: 'Alice'})-[:ACTED_IN]->(movie:Movie)<-[:ACTED_IN]-(bob:Person {name: 'Bob'})
RETURN movie.title;

10】排序和限制:查找前 5 部发行年份最晚的电影。

sql 复制代码
MATCH (movie:Movie)
RETURN movie
ORDER BY movie.released DESC
LIMIT 5;
相关推荐
Ultipa18 小时前
回答 | 图形数据库neo4j社区版可以应用小型企业嘛?
数据库·neo4j·图数据库
火云牌神2 天前
在windows系统中安装图数据库NEO4J
数据库·windows·neo4j
joker_sxj4 天前
【已解决】Neo4j Desktop打不开,不断网解决
neo4j
ZHOU_WUYI5 天前
创建简易个人关系图谱(Neo4j )
neo4j
楠奕5 天前
neo4j多跳查询,未只获取到收尾两个节点,待继续
neo4j
楠奕5 天前
neo4j官方示例
neo4j
大G哥6 天前
用 Go 和 TensorFlow 实现图像验证码识别系统
开发语言·后端·golang·tensorflow·neo4j
mashagua9 天前
neo4j初尝试
neo4j
楠奕10 天前
neo4j vs python
开发语言·python·neo4j
2401_8979300612 天前
Neo4j 的 `SET n += $properties` 语法详解
linux·服务器·neo4j