Cypher使用指南

在关系中

--表示无方向的关系

--> 表示有方向的关系

-[r]->则给关系赋予一个变量名,方便对这个关系进行操作

-[r:配偶]-> 匹配关系为 配偶 的类型

  • 1)创建:CREATE
  • 2)匹配:MATCH,OPTIONAL MATCH
  • 3)删除:DELETE,REMOVE,DROP
  • 4)修改:SET

CREAT

创建统一用 create命令,关系的创建和创建节点差不多,唯一区别就是,关系是有方向的,而且关系用 []表示,而节点用 ()表示。

create(n:'急性左心衰竭')

match(n),(b) where n.label='急性左心衰竭' and b.label='烦躁'
create(n)-[r:'临床表现为']->(b)
return n,r,b
match(n) where ID(n) = 21798 set
n.label='急性左心衰竭',n.clinical='烦躁' return n

RETURN

用于返回结果
// 执行列表操作,用 return 返回结果
return [1,'1',True,'1'+'2']

MATCH

在 Neo4j 中,MATCH 命令用于从数据库中获取节点,关系的信息,类似于 SQL 中的 SELECT。RETURN 则是在 MATCH 搜索完成后返回数据,因此 MATCH 必须与 RETURN 同时使用。

// 匹配所有 临床表现 节点
match (n:临床表现) return n
// 匹配 clinical 为 头疼 的 临床表现 节点
match (n:临床表现{name:'头疼'}) return n
// 匹配出有任意关系的两个节点
match p = (n)-[r]->(m) return p

OPTIONAL MATCH

optional match 类似于 match,不同之处在于 optional match 在匹配不到内容时返回 null 方便查询继续进行,而 match直接返回查询无结果

因为查询无结果,所以 match 只返回 Table 和 Code 视图窗口,并在 Table 视图窗口显示 查询无结果
换成 optional match 可以看到 Table 视图窗口返回了变量 p的值,为 null
optional match 使用方法类似 MATCH

WHERE

就像 SQL一样, Neo4j中提供 WHERE子句来过滤 MATCH的查询结果

DELETE

删除节点

match (n:'发热') delete n

删除关系
(删除所有叫 临床表现为的关系)

MATCH ()-[r:'临床表现为']-()
DELETE r

REMOVE

删除一个节点的多个标签

match (n {name :"yaoming"}) remove n:Chinese:Man return n

删除属性

match (andres {name: "yaoming"}) remove andres.age return andres

DROP

用于删除索引

SET

​ SET语句用于更新节点的标签以及节点和关系的属性。

//设置属性
MATCH (n { name: ' 急性左心衰竭' })
SET n.clinical = '烦躁'
RETURN n

//删除属性
MATCH (n { name: '急性左心衰竭' })
SET n. clinical = NULL
RETURN n

//在节点和关系间拷贝属性
MATCH (at { name: 'Andres' }),(pn { name: 'Peter' })
SET at = pn
RETURN at, pn

//从map中添加属性:当用map来设置属性时,可以使用+=形式的SET来只添加属性,而不删除图元素中已存在的属性。
MATCH (n { name: '急性左心衰竭' })
SET peter += { clinical: '烦躁' , drugs: '吗啡' }

//使用一个SET语句设置多个属性
MATCH (n { name: '急性左心衰竭' })
SET n.clinical = '烦躁', n.drugs = '吗啡'

//设置节点的标签
MATCH (n { name: '烦躁' })
SET n :clinical
RETURN n

//给一个节点设置多个标签
MATCH (n { name: 'Emil' })
SET n :Swedish:Bossman
RETURN n

Original: https://blog.csdn.net/weixin_45811499/article/details/124348173
Author: 一匹聪明的鱼
Title: Cypher使用指南

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/557374/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球