Neo4j 超级简单关系图创建示例

示例场景:创建一个小型社交网络

1. 创建节点和关系(一次性执行)

cypher 复制代码
// 创建3个人物节点
CREATE (alice:Person {name: 'Alice', age: 28})
CREATE (bob:Person {name: 'Bob', age: 30})
CREATE (charlie:Person {name: 'Charlie', age: 35})

// 创建公司节点
CREATE (google:Company {name: 'Google', founded: 1998})
CREATE (microsoft:Company {name: 'Microsoft', founded: 1975})

// 建立关系
// 人物关系
CREATE (alice)-[:KNOWS {since: 2015}]->(bob)
CREATE (bob)-[:KNOWS {since: 2016}]->(charlie)
CREATE (alice)-[:KNOWS {since: 2018}]->(charlie)

// 工作关系
CREATE (alice)-[:WORKS_AT {since: 2020}]->(google)
CREATE (bob)-[:WORKS_AT {since: 2018}]->(microsoft)
CREATE (charlie)-[:WORKS_AT {since: 2010}]->(microsoft)

2. 查询关系图

cypher 复制代码
// 查询所有人物及其关系
MATCH (p:Person)-[r]-(other)
RETURN p, r, other

3. 可视化查询结果

执行上述查询后,Neo4j浏览器会自动将结果可视化为图形,你会看到:

  • 3个Person节点(Alice、Bob、Charlie)
  • 它们之间的KNOWS关系
  • 每个人与公司的WORKS_AT关系

4. 更简单的分步创建方式

如果你想要一步步创建:

cypher 复制代码
// 第一步:只创建人物
CREATE (alice:Person {name: 'Alice'})
CREATE (bob:Person {name: 'Bob'})
CREATE (charlie:Person {name: 'Charlie'})

// 第二步:创建人物之间的关系
MATCH (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'})
CREATE (a)-[:KNOWS]->(b)

MATCH (a:Person {name: 'Alice'}), (c:Person {name: 'Charlie'})
CREATE (a)-[:KNOWS]->(c)

// 第三步:创建公司和工作关系
CREATE (google:Company {name: 'Google'})
MATCH (a:Person {name: 'Alice'}), (g:Company {name: 'Google'})
CREATE (a)-[:WORKS_AT]->(g)

提示

  1. 在Neo4j浏览器中:

    • 节点标签(如:Person)会显示为不同颜色
    • 关系类型(如[:KNOWS])会显示为连接线
    • 属性(如{name: 'Alice'})可以通过鼠标悬停查看
  2. 你可以点击节点展开或折叠相关关系

  3. 要清空数据库重新开始(仅用于开发环境):

cypher 复制代码
MATCH (n)
DETACH DELETE n

这个简单示例展示了Neo4j的核心概念:带标签的节点、带类型的关系以及属性。你可以通过修改这些示例来创建自己的图形数据模型。

相关推荐
Magicdata大数据17 小时前
AI辅助教学:调用大模型从教材中生成习题,方便学员练习
java·spring boot·大模型·知识图谱·neo4j·ai辅助教学
星川皆无恙5 天前
基于知识图谱的百科问答系统:Django + Neo4j 与实现
人工智能·python·机器学习·自然语言处理·django·知识图谱·neo4j
Sayai7 天前
Neo4j 社区版高可用实战:DRBD 块级复制 + Keepalived 虚拟 IP 冷备切换(附启停 SOP 与脑裂防范)
运维·neo4j·keepalived·高可用·drbd
喵本喵叁肆11 天前
diffprivlib 中文实战教程 · 第8讲:实战——从零改造一个 DP 模型
python·neo4j·差分隐私
智码看视界13 天前
大数据架构解析—数据血缘:从 SQL 解析到字段级溯源,搭建大数据平台数据治理底座
数据治理·neo4j·元数据·sql解析·数据血缘·datalineage·sqlglot
quweiie22 天前
Neo4j Community 安全访问配置总结
数据库·centos·neo4j
Sayai1 个月前
Neo4j 内嵌模式(Embedded)实战:Java 嵌入式 vs 服务端部署的写入性能对比与 GC 调优
java·开发语言·性能优化·neo4j·图数据库
AugustRed1 个月前
Neo4j 图数据库原理 + 应用场景简单介绍
数据库·neo4j
Thomas.Sir2 个月前
第34课:TensorFlow|TF迁移学习实战【调用官方预训练模型微调训练】
tensorflow·neo4j·迁移学习
xing-xing2 个月前
Neo4j学习总结
neo4j