neo4j的基础cypher语法

1、创建一个节点
creat(variable:label{key1:value1, key2:value2})

# 举例
create(n:file{name:'肖申克的救赎', type:'犯罪', score:9.7})
注意:我这里用的单引号,双引号可能会报错,看版本

大小写无所谓
merge创建

2、创建多个节点
create(variable:label{key1:value1, key2:value2}),
(variable:label{key1:value1, key2:value2}),
(variable:label{key1:value1, key2:value2})
3、创建一个节点与一个节点之间的关系
match(a:label),(b:label)
where a.name='肖申克的救赎' and b.name='弗兰克·德拉邦特'
create b-[r:direct]->a
4、创建一个节点与多个节点之间的关系
match(a:actor),(b:film)
where a.name='张丰毅' and (b.name='霸王别姬' or b.name='荆轲刺秦王')

1、查询某个节点
match(a:film)
where a.name='霸王别姬'
return a
2、查询某个标签下的所有节点
match(a:lable)
return a
3、查询两个节点之间的关系
match(:direct{a.name='弗兰克·德拉邦特'}) -[r]-> (:film){b.name='肖申克的救赎'})
return r
注意:可以通过type(r)获取关系类型

1、删除某一个节点
match(n:actor)
where n.name='马修·麦康纳'
delete n
2、删除某个标签的所有节点
match(n:actor)
delete n
3、删除所有节点
match(n)
delete n
4、删除两个节点之间的关系
match((a:actor{name:'张国荣'}) -[r]->(b:film{name:'霸王别姬'}))
delete r
5、删除某个节点的所有关系
match(n:actor{name:'张国荣'}) -[r]-> ()
delete r
6、删除某个标签的所有关系
match(n:actor) -[r]-> ()
delete r
# 或者
match() -[r]-> (n:film)
delete r

属性的相关操作

1、增加节点属性
match(n:film) where n.name='盗梦空间’ set n.language='english'
2、删除节点属性
match(n:film) where n.name='盗梦空间’ remove n.language
posted @ 2022-04-10 23:11  时光如你般美好  阅读(97)  评论(0编辑  收藏  举报