创建简易个人关系图谱(Neo4j )

发布于:2025-05-07 ⋅ 阅读:(10) ⋅ 点赞:(0)

1. 启动 Neo4j 并进入 Neo4j Browser
确保 Neo4j 已启动,访问:

http://localhost:7474/

2. 创建人物节点(Person)
(1) 创建 Alice

CREATE (alice:Person {name: "Alice", age: 28, gender: "Female"})
RETURN alice

:Person 是标签(Label),表示节点类型。

{name: "Alice", age: 28, gender: "Female"} 是属性(Properties)。

(2) 创建 Bob

CREATE (bob:Person {name: "Bob", age: 30, gender: "Male"})
RETURN bob

(3) 创建 Charlie

CREATE (charlie:Person {name: "Charlie", age: 25, gender: "Male"})
RETURN charlie

3. 创建关系(Relationships)
(1) Alice 认识 Bob

MATCH (a:Person {name: "Alice"}), (b:Person {name: "Bob"})
CREATE (a)-[:KNOWS]->(b)
RETURN a, b

[:KNOWS] 表示 “认识” 关系(方向:Alice → Bob)。

(2) Bob 认识 Charlie

MATCH (b:Person {name: "Bob"}), (c:Person {name: "Charlie"})
CREATE (b)-[:KNOWS]->(c)
RETURN b, c

(3) Alice 和 Bob 结婚

MATCH (a:Person {name: "Alice"}), (b:Person {name: "Bob"})
CREATE (a)-[:MARRIED_TO]->(b)
RETURN a, b

[:MARRIED_TO] 表示 “已婚” 关系(方向:Alice → Bob,通常婚姻关系是双向的,但这里按单向处理)。


4. 查询图谱
(1) 查看所有节点

MATCH (n) RETURN n

(2) 查看 Alice 的关系

MATCH (a:Person {name: "Alice"})-[r]->(other)
RETURN a, r, other

(3) 查看所有人物及其关系

MATCH (p1:Person)-[r]->(p2:Person)
RETURN p1, r, p2

• 在 Neo4j Browser 中,结果会以图形方式展示。


5. 添加更多属性(可选)
(1) 给 Alice 添加职业

MATCH (a:Person {name: "Alice"})
SET a.occupation = "Software Engineer"
RETURN a

(2) 给 Bob 添加爱好

MATCH (b:Person {name: "Bob"})
SET b.hobby = "Photography"
RETURN b

6. 删除关系或节点(可选)
(1) 删除 Alice 和 Bob 的婚姻关系

MATCH (a:Person {name: "Alice"})-[r:MARRIED_TO]->(b:Person {name: "Bob"})
DELETE r

(2) 删除 Charlie 节点(包括其关系)

MATCH (c:Person {name: "Charlie"})
DETACH DELETE c

网站公告

今日签到

点亮在社区的每一天
去签到