GraphGists

创建您的记录

CREATE (you:Person {name:"You"})
RETURN you

CREATE 用于创建带有标签和属性的节点。

你喜欢 Neo4j,对吧?

让我们找到自己,并添加一个指向新节点的新关系。

MATCH  (you:Person {name:"You"})
CREATE (you)-[like:LIKE]->(neo:Database {name:"Neo4j" })
RETURN you,like,neo

CREATE 可以创建单个节点,或更复杂的结构。

创建您的朋友

MATCH (you:Person {name:"You"})
FOREACH (name in ["Johan","Rajesh","Anna","Julia","Andrew"] |
  CREATE (you)-[:FRIEND]->(:Person {name:name}))

FOREACH 允许您针对列表中的每个元素执行更新操作。

找到您的朋友

MATCH (you {name:"You"})-[:FRIEND]->(yourFriends)
RETURN you, yourFriends

请注意,我们会针对图中找到的每个路径重复获取自身。

创建二级朋友和专业知识

MATCH (neo:Database {name:"Neo4j"})
MATCH (anna:Person {name:"Anna"})
CREATE (anna)-[:FRIEND]->(:Person:Expert {name:"Amanda"})-[:WORKED_WITH]->(neo)

CREATE 也可以添加更复杂的模式。

找到您网络中可以帮助您学习 Neo4j 的人

MATCH (you {name:"You"})
MATCH (expert)-[:WORKED_WITH]->(db:Database {name:"Neo4j"})
MATCH path = shortestPath( (you)-[:FRIEND*..5]-(expert) )
RETURN db,expert,path