惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Vulnerabilities – Threatpost
博客园 - 司徒正美
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
大猫的无限游戏
大猫的无限游戏
酷 壳 – CoolShell
酷 壳 – CoolShell
Forbes - Security
Forbes - Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
小众软件
小众软件
人人都是产品经理
人人都是产品经理
Know Your Adversary
Know Your Adversary
Security Latest
Security Latest
雷峰网
雷峰网
Cisco Talos Blog
Cisco Talos Blog
Latest news
Latest news
GbyAI
GbyAI
Last Week in AI
Last Week in AI
Hacker News: Ask HN
Hacker News: Ask HN
U
Unit 42
S
SegmentFault 最新的问题
月光博客
月光博客
Security Archives - TechRepublic
Security Archives - TechRepublic
Attack and Defense Labs
Attack and Defense Labs
S
Secure Thoughts
N
News and Events Feed by Topic
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
A
Arctic Wolf
Schneier on Security
Schneier on Security
C
CERT Recently Published Vulnerability Notes
I
Intezer
V
Visual Studio Blog
Microsoft Security Blog
Microsoft Security Blog
SecWiki News
SecWiki News
Google Online Security Blog
Google Online Security Blog
N
Netflix TechBlog - Medium
I
InfoQ
T
Tor Project blog
腾讯CDC
T
Tenable Blog
Webroot Blog
Webroot Blog
Y
Y Combinator Blog
TaoSecurity Blog
TaoSecurity Blog
Google DeepMind News
Google DeepMind News
AI
AI
C
Cisco Blogs
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V2EX - 技术
V2EX - 技术
PCI Perspectives
PCI Perspectives
C
CXSECURITY Database RSS Feed - CXSecurity.com
G
GRAHAM CLULEY
S
Schneier on Security

博客园 - 哥本哈士奇(aspnetx)

医疗器械行业 Salesforce Territory 完整落地实例 Raw Data Vault vs Business Data Vault Neo4j 多跳查询实战:从社交网络场景理解图遍历 Git 本地版本管理学习笔记 看完《低智商犯罪》,学习Cypher构建知识图谱 LangChain DeepAgents 学习笔记 LangChain Deepagent 版本0.6.1中间件一个bug Neo4j笔记(五):查询的处理流程 微软 SQL Server 版本演进史:从诞生到 SQL Server 2025 提升 Text2SQL 准确率 SQLServer Management Studio(SSMS) 22 Copilot 最佳实践学习笔记 SQLServer RAG笔记4:从服务层到前端交互 SQLServer RAG笔记5:为SQLServer 2025配置Ollama SQL Server RAG 笔记3:SQLServer2025 向量数据库 详解传统RAG、Text2SQL、Graph RAG:适用场景与问题示例汇总 SQL Server RAG 笔记2:图数据库服务层与前端可视化构建 SQL Server RAG 笔记1:图数据库构建 Neo4j 笔记(四):一篇文章如何入库的 数据仓库笔记 第六篇:PSA 层 SCD2 处理方式 数据仓库笔记 第五篇:Data Mart 层(数据集市) 数据仓库笔记 第四篇:Star Schema 层(维度建模) 数据仓库笔记 第三篇:常用缓慢变化维处理方式介绍 数据仓库笔记 第二篇:PSA 层(持久化暂存区)详解 数据仓库笔记 第一篇:数据仓库的定义、历史与意义 Neo4j 笔记(三):数据建模与程序连接实战 Neo4j 基础教程(一):安装与快速入门 Power BI学习笔记第20篇:面试题汇总 · 第三篇:高级应用与最佳实践篇 Power BI学习笔记第19篇:面试题汇总 · 第二篇:数据建模与 DAX 篇 Power BI学习笔记第18篇:面试题汇总 · 第一篇:基础概念篇 Power BI学习笔记第15篇:企业级报表开发与最佳实践 Power BI学习笔记第13篇:高级可视化与自定义图表 Power BI学习笔记第14篇:Power Query 高级数据处理 Power BI学习笔记第12篇:DAX 高级计算与性能优化 Power BI学习笔记第11篇:高级数据建模与关系设计 Power BI学习笔记第10篇:实战案例 — 销售数据分析仪表板 Power BI学习笔记第08篇:报表交互与筛选器 Power BI学习笔记第09篇:Power BI Service 发布与共享 Power BI学习笔记第07篇:可视化图表设计与最佳实践 Power BI学习笔记第06篇:DAX 进阶:时间智能与复杂计算 Power BI学习笔记第05篇:DAX 基础:计算列与度量值 Power BI学习笔记第04篇:数据建模与关系管理 Power BI学习笔记第03篇:Power Query 数据清洗与转换 Power BI学习笔记第02篇:数据获取与连接数据源 Power BI学习笔记第01篇:Power BI 简介与环境搭建 Power BI Dashboard 常用布局方案推荐 Power BI 示例一览 OpenClaw 核心八大 MD 文件 Microsoft Agent Framework 智能体调用工具 Microsoft Agent Framework 创建智能体 一个简单案例理解OpenClaw的做梦过程 SQLAlchemy 学习笔记 LangChain RAG索引与查询 - 学习笔记 LangChain使用deep agent并且加载SKILL 本地系统对接大模型智能体的若干尝试 财务分析报告 - 常用Power BI DAX公式详解 用SKILL实现请假流程信息收集 使用小龙虾来操作猿编程的遥控车 使用OpenClaw的Skills对接本地系统 OpenClaw必装Skill全指南 Dify Agentic RAG 笔记 # 简单的神经网络计算过程 - 正负判断 使用Gradio构建AI前端 - RAG的QA模块 使用Gradio构建AI前端 - RAG召回测试 Streamlit + LangChain 1.0 简单实现智能问答前后端 利用AI Agent,辅助销售团队制定培训和考试内容 实现AI和BI整合的初步思路和探索-Part3 实现AI和BI整合的初步思路和探索-Part2 实现AI和BI整合的初步思路和探索 以《出师表》作为例子,对比通用分块和父子分块的区别 LangChain RAG 学习笔记:从文档加载到问答服务 记录无法修改OneDrive文件的解决方法 Power BI制作指标达成跟踪器 Power BI学习笔记-周报销售数据分析
Neo4j 基础教程(二):Cypher CRUD 完全指南
哥本哈士奇(aspnet · 2026-04-26 · via 博客园 - 哥本哈士奇(aspnetx)

Neo4j 基础教程(二):Cypher CRUD 完全指南

环境:macOS + Neo4j Browser,此篇简单介绍Cypher的CRUD操作。


准备工作

确认 Neo4j 正在运行,浏览器打开 http://localhost:7474


基础查询:MATCH

查询所有节点

MATCH (n) RETURN n

按标签查询

// 查找所有 Person 节点
MATCH (p:Person) RETURN p

// 查找特定属性
MATCH (p:Person {name: 'Alice'}) RETURN p

带条件的查询

// WHERE 子句
MATCH (p:Person)
WHERE p.age >= 25
RETURN p.name, p.age

// 多条件
MATCH (p:Person)
WHERE p.age > 25 AND p.name STARTS WITH 'A'
RETURN p

限定返回数量

MATCH (p:Person) RETURN p LIMIT 10

创建:CREATE

创建节点

// 无标签节点
CREATE (n)

// 带属性
CREATE (p:Person {name: 'Charlie', city: 'Beijing'})

// 一次性创建多个节点
CREATE (a:Dev {lang: 'Python'}),
       (b:Dev {lang: 'JavaScript'}),
       (a)-[:WORKS_WITH]->(b)

创建关系

// 假设 Alice 和 Bob 已存在,现在创建关系
MATCH (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'})
CREATE (a)-[:KNOWS {year: 2021}]->(b)

带变量的 CREATE

// 创建并返回节点
CREATE (p:Person {name: 'Diana', role: 'Designer'})
RETURN p

更新:SET

更新节点属性

// 精确匹配后更新
MATCH (p:Person {name: 'Alice'})
SET p.age = 31, p.city = 'Shanghai'
RETURN p

添加额外属性

MATCH (p:Person {name: 'Alice'})
SET p.email = 'alice@example.com'

使用 map 更新

MATCH (p:Person {name: 'Bob'})
SET p += {phone: '13800138000', country: 'China'}

删除:DELETE / REMOVE

删除关系

// 先查再删
MATCH (a:Person)-[r:KNOWS]->(b:Person)
WHERE a.name = 'Alice' AND b.name = 'Bob'
DELETE r

删除节点

// 删除节点(需先删除关联关系)
MATCH (p:Person {name: 'Diana'})
DETACH DELETE p

⚠️ DETACH DELETE 会同时删除所有关系,最安全

移除属性

// 移除某个属性(用 REMOVE)
MATCH (p:Person {name: 'Alice'})
REMOVE p.age

移除标签

MATCH (p:Person)
REMOVE p:Person

MERGE:防重复插入

// 如果节点已存在则不重复创建
MERGE (p:Person {name: 'Alice'})
RETURN p

// 确保关系存在,不重复创建
MATCH (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'})
MERGE (a)-[r:KNOWS]->(b)
RETURN r

💡 MERGE = MATCH + CREATE,是插入数据的最佳实践


进阶查询

路径查询

// 查找 Alice 的二级联系人
MATCH (a:Person {name: 'Alice'})-[:KNOWS]->(friend)-[:KNOWS]->(fof)
RETURN friend.name, fof.name

聚合函数

// 统计每种标签的节点数量
MATCH (n)
RETURN labels(n) AS label, count(n) AS count
ORDER BY count DESC

ORDER BY / SKIP

MATCH (p:Person)
RETURN p.name, p.age
ORDER BY p.age DESC
SKIP 2 LIMIT 5

实战小练习:构建社交关系图

// 清空数据
MATCH (n) DETACH DELETE n;

// 创建人物
CREATE
  (alice:Person {name: 'Alice', job: 'Engineer'}),
  (bob:Person {name: 'Bob', job: 'Designer'}),
  (carol:Person {name: 'Carol', job: 'Manager'}),
  (dave:Person {name: 'Dave', job: 'Engineer'}),
  (eve:Person {name: 'Eve', job: 'Analyst'});

// 创建关系
MATCH (a:Person {name:'Alice'}), (b:Person {name:'Bob'}) CREATE (a)-[:KNOWS]->(b);
MATCH (a:Person {name:'Bob'}), (c:Person {name:'Carol'}) CREATE (a)-[:KNOWS]->(c);
MATCH (a:Person {name:'Alice'}), (d:Person {name:'Dave'}) CREATE (a)-[:KNOWS]->(d);
MATCH (a:Person {name:'Carol'}), (e:Person {name:'Eve'}) CREATE (a)-[:KNOWS]->(e);
MATCH (a:Person {name:'Dave'}), (e:Person {name:'Eve'}) CREATE (a)-[:KNOWS]->(e);

练习题

  1. 查找所有工程师(Engineer)
  2. 查找 Alice 的直接好友
  3. 查找 Bob 通过一层关系能认识谁(二度人脉)
  4. 统计每个人认识多少人

快捷键备忘

操作 快捷键
执行查询 Ctrl+Enter / Cmd+Enter
格式化代码 Shift+Ctrl+F
清空编辑器 Ctrl+Delete

下一步

  • 教程三:数据建模与 Python/JavaScript 连接实战