1.公式模式是语法范式
2.代码模式是实例,可按顺序复制执行
3.涉及所有可能的节点、节点类型、属性,关系,关系类型、属性的增删改查
4.学习本教程之后可以学习
neo4j建模规范和思想:Neo4j数据建模教程
python对neo4j的api接口框架py2neo进阶教程:py2neo框架学习全网最详细教程
节点 = ( 代表元 : 节点类别 { 属性 1 : 属性值 1 , 属性 2 : 属性值 2 } ) 节点=(代表元:节点类别\{属性1:属性值1,属性2:属性值2\}) 节点=(代表元:节点类别{属性1:属性值1,属性2:属性值2})
(n:Person{name:'Tony'})
(n:Person{name:'Tom', age:45, hight:175})
(n:Address{address:'guangdong'})
关系 = [ 代表元 : 关系类型 { 属性 : 属性值 } ] 关系=[代表元:关系类型\{属性:属性值\}] 关系=[代表元:关系类型{属性:属性值}]
[r:Friend{value:90}]
[r:Live]
[r:transAccounts{cash:800,data:'2022-04-06'}]
c r e a t e 节点 create\quad 节点 create节点
create (n:Person{name:'Tony'})
create (m:Person{name:'Tom', age:45, hight:175})
create (k:address{name:'guangdong'})
m a t c h 节点 s e t 节点 : 新标签 match \quad 节点 \quad set \quad 节点:新标签 match节点set节点:新标签
MATCH (n:Person{name:'Tom'})
SET n:Suspect
c r e a t e 节点 1 , 节点 2 m e r g e 节点 1 − 关系 − > 节点 2 create \quad 节点1,节点2 \quad merge \quad 节点1-关系->节点2 create节点1,节点2merge节点1−关系−>节点2
match (n:Person{name:'Tony'}),(m:Person{name:'Tom'})
merge (n)-[:Friend{value:90}]->(m)
match (n:Person{name:'Tony'}),(m:address{name:'guangdong'})
merge (n)-[:Live]->(m)
c r e a t e 节点 1 − 关系 − > 节点 2 create \quad 节点1-关系->节点2 create节点1−关系−>节点2
create (n:Person{name:'Sandy'})-[:Friend{value:90}]->(m:Person{name:'Jenny'})
create (x:Person{name:'Peter'})-[:Live]->(y:address{name:'hubei'})
m a t c h 节点 1 m e r g e 节点 1 − 关系 − > 节点 2 match \quad 节点1 \quad merge \quad 节点1-关系->节点2 match节点1merge节点1−关系−>节点2
match (n:Person{name:'Tony'})
create (n)-[:Friend{value:90}]->(m:Person{name:'Jack'})
match (m:address{name:'guangdong'})
create (n:Person{name:'Danny'}) -[:Live]-> (m)
m a t c h 节点 1 s e t 节点 1. 属性名 1 match \quad 节点1 \quad set \quad 节点1.属性名1 match节点1set节点1.属性名1
match (n:Person{name:'Tony'}) set n.age=45
match (n:Person{name:'Tony'}) set n.hight=180
m a t c h 关系 1 s e t 节点 1. 属性名 1 match \quad 关系1 \quad set \quad 节点1.属性名1 match关系1set节点1.属性名1
match (n:Person{name:'Tony'})-[r:Friend]-(m:Person{name:'Tom'}) set r.value=45
m a t c h ( n ) − [ h ] − > 节点 d e l e t e h m a t c h 节点 − [ r ] − > ( n ) d e l e t e r m a t c h 节点 d e l e t e 节点 match\quad (n)-[h]->节点 \quad delete\quad h\\match\quad 节点-[r]->(n) \quad delete\quad r\\match \quad 节点 \quad delete \quad 节点 match(n)−[h]−>节点deletehmatch节点−[r]−>(n)deletermatch节点delete节点
match (n:Person{name:'Peter'})-[h]->(m) delete h;
match (m)-[r]->(n:Person{name:'Peter'}) delete r;
match (n:Person{name:'Peter'}) delete (n)
m a t c h ( n ) − [ h ] − > ( m ) d e t a c h d e l e t e m match \quad (n)-[h]->(m) \quad detach \quad delete \quad m match(n)−[h]−>(m)detachdeletem
match (n:Person{name:'Jenny'}) detach delete n
m a t c h ( n ) − [ h ] − > 节点 d e l e t e h match\quad (n)-[h]->节点 \quad delete\quad h match(n)−[h]−>节点deleteh
match (n:Person{name:'Danny'})-[h]->(m) delete h;
m a t c h 节点 1 r e m o v e 节点 1. 属性名 match \quad 节点1 \quad remove \quad 节点1.属性名 match节点1remove节点1.属性名
match (n:Person{name:'Tony'}) remove n.age
m a t c h 节点 1 s e t 节点 1. n a m e = 新名字 m a t c h 节点 2 s e t 节点 2. 属性名 1 = 属性值 match \quad 节点1 \quad set \quad 节点1.name=新名字\\match \quad 节点2 \quad set \quad 节点2.属性名1=属性值 match节点1set节点1.name=新名字match节点2set节点2.属性名1=属性值
match (n:Person{name:'Jack'}) set n.name='Jacky'
match (m:Person{name:'Tony'}) set m.hight=160
m a t c h 节点 1 − 关系 − > 节点 2 s e t 关系 . 属性名 = 属性值 match \quad 节点1-关系->节点2 \quad set\quad 关系.属性名=属性值 match节点1−关系−>节点2set关系.属性名=属性值
match (n:Person{name:'Tony'})-[r]->(m:Person{name:'Tom'}) set r.value=100
m a t c h 节点 1 r e m o v e 节点 1 : 节点类别 s e t 节点 1 : 新节点类别 match \quad 节点1 \quad remove \quad 节点1:节点类别\quad set\quad 节点1:新节点类别 match节点1remove节点1:节点类别set节点1:新节点类别
MATCH (n:Person{name:'Sandy'})
REMOVE n:Person
SET n:Suspect
MATCH (n:Person{name:'Tony'})-[r:Friend]->(m:Person{name:'Tom'})
CREATE (n)-[r2:Couple]->(m)
SET r2 = r // 这里是复制属性
WITH r
DELETE r
m a t c h 节点 r e t u r n 节点 match \quad 节点\quad return \quad 节点 match节点return节点
match (n:Person{name:'Tony'}) return n
m a t c h 节点 1 − 关系 − > 节点 2 r e t u r n 关系 match \quad 节点1-关系->节点2 \quad return \quad 关系 match节点1−关系−>节点2return关系
match (n:Person{name:'Tony'})-[r]->(m) return r
m a t c h 节点 r e t u r n 节点 . 属性名 1 match \quad 节点\quad return \quad 节点.属性名1 match节点return节点.属性名1
match (n:Person{name:'Tony'}) return n.age
m a t c h 节点 1 − 关系 − > 节点 2 r e t u r n 关系 . 属性名 match \quad 节点1-关系->节点2 \quad return \quad 关系.属性名 match节点1−关系−>节点2return关系.属性名
match (n:Person{name:'Tony'})-[r]->(m:Person{name:'Tom'}) return r.value