Neo4j 框架 初步简单使用(基础增删改查)

Neo4j 是一个高性能的、开源的图数据库。它将数据存储为图结构,其中节点表示实体,边表示实体之间的关系。这种图数据模型非常适合处理复杂的关系型数据,能够高效地进行关系查询和遍历。

Neo4j 的主要特性包括:

强大的图查询语言 Cypher:Cypher 是一种专门为 Neo4j 设计的声明式查询语言,使得查询和操作图数据变得直观和高效。

创建两个节点

CREATE (p:Person {name: 'Likefr', age: 40}), (m:Person {name: 'Neo', age: 20})

查询节点

  • 查询name为Likefr的节点
MATCH(p:Person{name: 'Likefr'}) return p
  • 查询指定标签 Person的所有节点
MATCH(p:Person) return p

查询全部节点 (部分标签)

MATCH (n)
RETURN n

关联节点关系

  • 1.创建节点时直接关联
CREATE (p1:Person {name: 'MseDa'}), (p2:Person {name: 'Bob'})
CREATE (p1)-[:KNOWS]->(p2)
RETURN p1, p2
  • 2.将已有节点关联起来 (任何操作都是先把节点查出来在对其进行操作)
MATCH(p1:Person {name: 'MseDa'}), (p2:Person {name: 'Bob'})
create(p1)-[:KNOWS]->(p2)

新增或更新节点属性

MATCH (p:Person {name: 'MseDa'})
SET p.age = 31

更新关系属性

MATCH (p1:Person {name: 'MseDa'})-[r:KNOWS]->(p2:Person)
SET r.since = 2022
RETURN r

基本上操作都是一样 先使用MATCH 定义一个别名 把数据捞出来 在进行操作

删除节点

MATCH (p:Person {name: 'MseDa'})
DELETE p
  • 删除多个节点
MATCH (p:Person {name: 'MseDa'}), (p2:Person {name: 'Alice2'})
DELETE p,p2
  • 需要注意的是 如果删除的节点与其他节点有关联将无法删除并会抛出异常
    2025-07-23T06:50:39.png

意思就是: 该节点它仍然和别的节点有关系。要删除该节点,必须先删除其关系

删除关系

MATCH (p1:Person {name: 'MseDa'})-[r:KNOWS]->(p2:Person)
DELETE r

同时删除节点 和 关系


MATCH (p1:Person {name: 'MseDa'})-[r:KNOWS]->(p2:Person)
DELETE p1, r, p2

查询节点的属性值

create(el:lur{name: 'el',state: false})
match(el:lur{name: 'el'}) return el.state

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/92526.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/92526.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【iOS】锁[特殊字符]

文章目录前言1️⃣什么是锁🔒?1.1 基本概念1.2 锁的分类2️⃣OC 中的常用锁2.1 OSSpinLock(已弃用):“自旋锁”的经典代表为什么尽量在开发中不使用自旋锁自旋锁的本质缺陷:忙等待(Busy Waiting…

在easyui中如何设置自带的弹窗,有输入框

这个就是带input的确认弹框($.messager.prompt)// 使用prompt并添加placeholder提示 $.messager.prompt(确认, 确定要将事故记录标记为 statusText 吗?, function(r) {if (r) {// r 包含用户输入的内容var remark r.trim();// 验证输入不为…

Android-API调用学习总结

一、Postman检查API接口是否支持1.“HTTP Request” 来创建一个新的请求。——请求构建界面,这是你进行所有 API 调用的地方。2.设置请求方法和 URL:选择请求方法: 在 URL 输入框左侧,有一个下拉菜单。点击它,选择你想…

《计算机网络》实验报告一 常用网络命令

目 录 1、实验目的 2、实验环境 3、实验内容 3.1 ping基本用法 3.2 ifconfig/ipconfig基本用法 3.3 traceroute/tracert基本用法 3.4 arp基本用法 3.5 netstat基本用法 4、实验结果与分析 4.1 ping命令的基本用法 4.2 ifconfig/ipconfig命令的基本用法 4.3 tracer…

MySQL深度理解-深入理解MySQL索引底层数据结构与算法

1.引言在项目中会遇到各种各样的慢查询的问题,对于千万级的表,如果使用比较笨的查询方式,查询一条SQL可能需要几秒甚至几十秒,如果将索引设置的比较合理,可以将查询变得仍然非常快。2.索引的本质索引:帮助M…

Django母婴商城项目实践(九)- 商品列表页模块

9、商品列表页模块 1、业务逻辑 商品模块分为:商品列表页 和 商品详情页 商品列表页将所有商品按照一定的规则排序展示,用于可以从销量、价格、上架时间和收藏数量设置商品的排序方式,并且在商品左侧设置分类列表,选择某一个分类可以筛选出对应的商品信息。 商品列表页…

8、STM32每个系列的区别

1、F1和F4的系列的区别 F1采用Crotex M3内核,F4采用Crotex M4内核。F4比F1的主频高。F4具有浮点数运算单元,F1没有浮点单元。F4的具备增强的DSP指令集。F407的执行16位DSP指令的时间只有F1的30%~70%。F4执行32位DSP指令的时间只有F1的25% ~ 60%。F1内部S…

DeepSPV:一种从2D超声图像中估算3D脾脏体积的深度学习流程|文献速递-医学影像算法文献分享

Title题目DeepSPV: A deep learning pipeline for 3D spleen volume estimation from 2Dultrasound imagesDeepSPV:一种从2D超声图像中估算3D脾脏体积的深度学习流程01文献速递介绍1.1 临床背景 脾肿大指脾脏增大,是多种潜在疾病的重要临床指标&#x…

病历数智化3分钟:AI重构医院数据价值链

一、方案概述本方案针对某省医联体医院病例数据管理需求,通过AI技术实现病历数字化→信息结构化→数据应用化的全流程改造。系统采用双端协同架构: - 普通用户端:为一线医护人员提供病历拍摄、AI识别修正、安全上传功能 - 管理员后台&#…

CSS+JavaScript 禁用浏览器复制功能的几种方法

🛡️ 禁用浏览器复制功能完整指南 网页中禁用用户的复制功能,包括 CSS 方法、JavaScript 方法、综合解决方案以及实际应用场景。适用于需要保护内容版权、防止恶意爬取或提升用户体验的场景。 📋 目录 🚀 快速开始&#x1f3a8…

Java 虚拟线程在高并发微服务中的实战经验分享

Java 虚拟线程在高并发微服务中的实战经验分享 虚拟线程(Virtual Threads)作为Java 19引入的预览特性,为我们在高并发微服务场景下提供了一种更轻量、易用的并发模型。本文结合真实生产环境,讲述在Spring Boot微服务中引入和使用虚…

《拆解WebRTC:NAT穿透的探测逻辑与中继方案》

WebRTC以其无需插件的便捷性,成为连接全球用户的隐形桥梁。但很少有人知晓,每一次流畅的视频对话背后,都藏着一场与网络边界的无声博弈——NAT,这个为缓解IPv4地址枯竭而生的技术,既是网络安全的屏障,也是端…

前端开发 React 组件优化

1. 使用 React.memo 进行组件优化问题:当父组件重新渲染时,子组件也会重新渲染,即使它的 props 没有变化。解决方案:使用 React.memo 包裹子组件,让其只在 props 变化时才重新渲染。示例场景:展示一个显示计…

变频器实习DAY12

目录变频器实习DAY12一、继续,柔性平台测试!上午 王工Modbus新功能测试下午 柔性平台继续按照说明书再测一遍附加的小知识点中国狸花猫.git文件附学习参考网址欢迎大家有问题评论交流 (* ^ ω ^)变频器实习DAY12 一、继续,柔性平台测试&…

Redis--多路复用

🧩 一、什么是“客户端连接”?所谓 客户端连接 Redis,指的是:一个程序(客户端)通过网络连接到 Redis 服务端(比如 127.0.0.1:6379),建立一个 TCP 连接,双方可…

数组——初识数据结构

一维数组数组的创建数组是一种相同类型元素的集合数组的创建方式C99 中引入了变长数组的概念,变长数组支持数组的大小使用变量来指定明显这里的vs2019不支持变长数组数组初始化和不完全初始化第二个数组就是典型的不完全初始化,开辟了10个空间&#xff0…

技术速递|使用 Semantic Kernel 与 A2A 协议构建多智能体解决方案

作者:卢建晖 - 微软高级云技术布道师 翻译/排版:Alan Wang 在快速发展的 AI 应用开发领域,能够协调多个智能体已成为构建复杂企业级解决方案的关键。虽然单个 AI 智能体擅长特定任务,但复杂的业务场景往往需要跨平台、跨框架甚至跨…

前端跨域请求原理及实践

在前端开发中,"跨域"是一个绕不开的话题。当我们的页面尝试从一个域名请求另一个域名的资源时,浏览器往往会抛出类似Access to fetch at xxx from origin xxx has been blocked by CORS policy的错误。下面将深入探讨跨域请求的底层原理&#…

SpringBoot07-数据层的解决方案:SQL

一、内置数据源 1-1、【回顾】Druid数据源的配置 druid的两种导入格式 1-2、springboot提供的3种内置数据源的配置 若是不配置Druid, springboot提供了3中默认的数据源配置,它们分别是: 1. HikariCP(默认) 从 Spring…

前端自动化埋点:页面模块级行为跟踪与问题定位系统​​的技术设计方案

一、核心设计目标​​精细化监控​​:定位到页面中​​单个模块​​的曝光、点击等行为。​​低侵入性​​:业务代码与埋点逻辑解耦,降低开发维护成本。​​链路可追踪​​:串联用户从曝光到操作的完整行为路径。​​实时性​​&a…