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的核心概念:带标签的节点、带类型的关系以及属性。你可以通过修改这些示例来创建自己的图形数据模型。

相关推荐
喜欢打篮球的普通人2 天前
MLIR快速入门
neo4j·mlir
ELI_He9992 天前
Neo4j 安装 APOC
neo4j
綮地3 天前
Neo4j 基本处理
neo4j
lzp07913 天前
Neo4j图数据库学习(二)——SpringBoot整合Neo4j
数据库·学习·neo4j
爱折腾的小码农3 天前
neo4j数据库桌面管理工具
数据库·neo4j
Wenhao.7 天前
Docker 安装 neo4j
docker·容器·neo4j
RDCJM8 天前
Neo4j图数据库学习(二)——SpringBoot整合Neo4j
数据库·学习·neo4j
机器不学习我也不学习10 天前
TensorFlow环境安装
neo4j
码农老李11 天前
vxWorks7.0 Simpc运行tensorflow lite example
人工智能·tensorflow·neo4j
小鸡吃米…1 个月前
TensorFlow 实现异或(XOR)运算
人工智能·python·tensorflow·neo4j