neo4j数据库

@

目录

neo4j

https://neo4j.com/docs/cypher-refcard/current/ 参考卡片

neo4j存储格式

where子句

match(p:Person{name:"王涛"})-[r]-(n) return p;

MATCH xxx=()-[r:personCompany]->() RETURN xxx LIMIT 25

取出所有邻居

# 取出Tom的所有关联的边r和结点n。
match(p:person{name:"Tom"})-[r]-(n) return r,n;
# 取出所有ID=0的结点的personCompany邻居n1(返回包括结点n)
match (n:TaxPayer)-[:personCompany]-(n1) where n.tempID=0 return n,n1
# 取出所有ID=0的结点的 所有类型边 邻居n1(返回包括结点n)
match (n:TaxPayer)-[]-(n1) where n.tempID=0 return n,n1

二阶邻居

MATCH (js:Person)-[:KNOWS]-()-[:KNOWS]-(surfer)
WHERE js.name = "Johan" AND surfer.hobby = "surfing"
RETURN DISTINCT surfer

delete子句

# 删除所有结点
match ()-[r]-() match (n) delete r,n

规则积累

  1. match (ee:Person{name:"Emil"}) create(:Person{name:"heljg"})若match有匹配,则继续执行、插入结点;否则后面的语句将不执行。
MATCH (ee:Person) WHERE ee.name = "Emil"
CREATE (js:Person { name: "Johan", from: "Sweden", learn: "surfing" }),
(ir:Person { name: "Ian", from: "England", title: "author" }),
(rvb:Person { name: "Rik", from: "Belgium", pet: "Orval" }),
(ally:Person { name: "Allison", from: "California", hobby: "surfing" }),
(ee)-[:KNOWS {since: 2001}]->(js),(ee)-[:KNOWS {rating: 5}]->(ir),
(js)-[:KNOWS]->(ir),(js)-[:KNOWS]->(rvb),
(ir)-[:KNOWS]->(js),(ir)-[:KNOWS]->(ally),
(rvb)-[:KNOWS]->(ally)

若“Emil”结点存在,插入后面的结点和边。

上一篇:MATLAB:增加噪声,同时多次叠加噪声图和原图以及求平均图像(imnoise,imadd函数)


下一篇:Neo4j 学习案例库分享