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

相关推荐
Coder_Boy_18 小时前
TensorFlow小白科普
人工智能·深度学习·tensorflow·neo4j
凯子坚持 c2 天前
CANN 生态中的模型压缩利器:深入 `quant-tool` 项目实现高效 INT8 部署
neo4j
小羊不会打字2 天前
CANN 生态中的模型安全加固:`secure-model-deploy` 项目实践指南
安全·neo4j
嗯嗯**5 天前
Neo4j学习2:概念、数据展示、CQL使用
数据库·学习·neo4j·数据存储·图数据库·序列化·cql
嗯嗯**5 天前
Neo4j学习4:数据导入
学习·neo4j·图数据库·csv·数据导入
嗯嗯**5 天前
Neo4j学习3:Java连接图库并执行CQL
java·学习·spring·neo4j·图数据库·驱动·cql
嗯嗯**6 天前
Neo4j学习1:概述、安装
学习·neo4j·概述·安装·图数据库·jdk21
小陈phd7 天前
混合知识库搭建:本地Docker部署Neo4j图数据库与Milvus向量库
数据库·docker·neo4j
码云数智-大飞7 天前
基于语义内核(Semantic Kernel)与 Neo4j 构建轻量级知识问答系统
neo4j
执携10 天前
Neo4j的安装与配置
neo4j