Neoj4 cypher脚本基本操作

输入网址后,进入默认数据库

Neoj4 cypher脚本基本操作_第1张图片操作一,创建一个节点
CREATE (node:Label {property: value})

#解释
CREATE (变量名:类名 {节点属性名: 属性值})

#举例
CREATE (node1:Person {name: 'xiao ming'})
CREATE (node2:Person {name: 'xiao hong'})
Neoj4 cypher脚本基本操作_第2张图片
Neoj4 cypher脚本基本操作_第3张图片操作二,创建连边
match (a:Person),(b:Person)
where a.name='xiao ming' and b.name='xiao hong'
CREATE (a)-[rel:friend]->(b)

#解释
a,b就类似java函数的内参/函数入参。指定类为Person,可以不指定
where 就跟SQL语句一样,指定节点属性为'xiao ming'和'xiao hong'
匹配到a,b两个节点就可创建连边
rel为关系的变量名,friend是关系的类名


另一种方法
match (a:Person),(b:Person)
where ID(a)=0 and ID(b)=1
CREATE (a)-[rel:friend]->(b)

#解释
每个节点都有一个id,用id匹配节点,注意需要大写 ID(xxx)
操作三,查看创建的图

        方法一:

Neoj4 cypher脚本基本操作_第4张图片

        方法二:

MATCH (n)-[r]->(m)
RETURN n, r, m

上述查询将返回所有节点之间的关系和它们的相关信息。 请注意,如果你的图非常大,查询整个图可能会占用大量的内存和计算资源。

操作四,修改节点信息
MATCH (node:Label {property: value})
SET node.property = newValue

#解释
先匹配节点,用MATCH
再SET新值

#例子
match (a)
where a.name='xiao ming'
set a.name='xiao liu'
操作五,删除节点
#删除指定ID的节点

MATCH (node)
WHERE ID(node) = {nodeId}
DELETE node

#例子
MATCH (a)
WHERE ID(a) = 0
DELETE a

#请注意,删除节点时,与该节点相关的关系也将被删除。如果要保留与该节点相关的关系,可以使用DETACH DELETE子句:

MATCH (node)
WHERE ID(node) = {nodeId}
DETACH DELETE node

使用DETACH DELETE子句将删除节点及其关系,但不会删除与该节点相关的其他节点。
备注

所有执行过的cypher语句都会被执行。所以同样的语句别执行两次,如创建节点语句两次,会出现长得一样的两个节点,只是节点id不一样。

你可能感兴趣的:(neo4j)