neo4j
This commit is contained in:
35
neo4j.md
35
neo4j.md
@@ -20,6 +20,39 @@ Chaque nœud peut avoir :
|
|||||||
|
|
||||||
Les relations relient deux nœuds et ont elles aussi un type et des propriétés :
|
Les relations relient deux nœuds et ont elles aussi un type et des propriétés :
|
||||||
|
|
||||||
```
|
```cypher
|
||||||
(:Person {name: "Sigourney"})-[:JOUE { role: "Ellen" }]->(:Film {title: "Alien"})
|
(:Person {name: "Sigourney"})-[:JOUE { role: "Ellen" }]->(:Film {title: "Alien"})
|
||||||
```
|
```
|
||||||
|
|
||||||
|
JOUE est le type de relation.
|
||||||
|
|
||||||
|
{ role: "Ellen" } est une propriété de cette relation.
|
||||||
|
|
||||||
|
Les relations sont orientées : elles vont d’un nœud source vers un nœud cible `-[]->`.
|
||||||
|
|
||||||
|
## Le langage Cypher
|
||||||
|
|
||||||
|
Cypher est le langage de requête de Neo4j, inspiré de SQL mais adapté aux graphes.
|
||||||
|
|
||||||
|
### Trouver un noeud
|
||||||
|
|
||||||
|
```cypher
|
||||||
|
MATCH (p:Person { name: "Sigourney" })
|
||||||
|
RETURN p;
|
||||||
|
```
|
||||||
|
|
||||||
|
### Trouver des relations directes
|
||||||
|
|
||||||
|
```cypher
|
||||||
|
MATCH (a:Person)-[:KNOWS]->(b:Person)
|
||||||
|
RETURN a.name, b.name;
|
||||||
|
```
|
||||||
|
|
||||||
|
### Trouver des chemins
|
||||||
|
|
||||||
|
```cypher
|
||||||
|
MATCH path = (a:Person {name:"Alice"})-[:KNOWS*1..3]->(b:Person)
|
||||||
|
RETURN path;
|
||||||
|
```
|
||||||
|
|
||||||
|
[:KNOWS*1..3] cherche des chemins de 1 à 3 sauts.
|
||||||
|
|||||||
Reference in New Issue
Block a user